最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

【Aegisub相關(guān)/可視化界面(GUI)】wxWidgets庫 - wxTextCtrl學(xué)習(xí)筆記

2021-01-09 14:01 作者:只有神知道的歌詞特效  | 我要投稿

來源鏈接:

https://blog.csdn.net/blems/article/details/5255861


wxTextCtrl學(xué)習(xí)筆記


?


1、繼承關(guān)系


可多重繼承自streambuf


默認(rèn)集成自wxControl->wxWindow->wxEvtHandler->wxObject




2、頭文件(在wxWidget中每個控件都是單獨的一個類)


wx/textctrl.h


?


3、窗口類型


wxTE_PROCESS_ENTER 生成 wxEVT_COMMAND_TEXT_ENTER事件


wxTE_PROCESS_TAB


wxTE_MULTILINE 允許多行


wxTE_PASSWORD 文本顯示為星號


wxTE_READONLY 文本不可編輯


wxTE_RICH


wxTE_RICH2


wxTE_AUTO_URL


wxTE_NOHIDESEL


wxTE_LEFT 左對齊 (default).


wxTE_CENTRE 居中對齊(currently wxMSW and wxGTK2 only).


wxTE_RIGHT 右對齊 (currently wxMSW and wxGTK2 only).


wxTE_DONTWRAP 同 wxHSCROLL style: 不換行,僅僅顯示水平滾動條.


wxTE_CHARWRAP ? ?無法一行顯示完整的長行會在任意位置換行 (wxUniv and wxGTK2 only).


wxTE_WORDWRAP 無法一行顯示完整的長行會在單詞的邊界換行 (wxUniv and wxGTK2 only).


wxTE_BESTWRAP 在單詞的邊界 or 或者比窗口寬度更長的單詞任意字母處換行 (this is the default).


wxTE_CAPITALIZE ? 在ppc和sMartphone上,第一個字母大寫


?


?


需要注意的是在wxMSW和wxGTK平臺上,對齊方式(wxTE_LEFT, wxTE_CENTRE and wxTE_RIGHT)可在文本控件創(chuàng)建后動態(tài)的


改變。wxTE_READONLY, wxTE_PASSWORD 和 換行樣式的動態(tài)改變僅適用于wxGTK平臺,而非wxMSW。其他的樣式


只能在空間創(chuàng)建過程中設(shè)置。


?


4、wxTextCtrl 文本格式


總結(jié):千萬不要用wxTextCtrl(多行)返回的indices來操作控件中所包含的字符串,這些indices只能用作參數(shù)傳遞給wxTextCtrl的其他成員函數(shù)。


?


5、wxTextCtrl 樣式


多行文本控件支持插入文本之前調(diào)用SetDefaultStyle函數(shù)來設(shè)置文本樣式,也可以調(diào)用SetStyle函數(shù)來改變已經(jīng)插入的文本的樣式。


text->SetDefaultStyle(wxTextAttr(*wxRED,*wxLIGHT_GREY)); //設(shè)置前景色為紅色,背景色為灰色,wxTextAttr只有一個參數(shù)時,默認(rèn)設(shè)置前景色


?


6、wxTextCtrl和c++流


wxTextCtrl可以以三種方式支持流的特性:


第一種:


wxTextCtrl *contrl= new wxTextCtrl(...);


?


ostream stream(control);


stream<<123.456<<"some text";


stream.flush();


?


?


第二種:


?


#include <iostream>


?


wxTextCtrl *control = new wxTextCtrl(...);


?


std::streambuf *sbOld = std::cout.rdbuf();


std::cout.rdbuf(control);


?


std::cout.rdbuf(sbOld);


?


第三種:


#include <iostream>


?


wxTextCtrl *control = new wxTextCtrl(...);


wxStreamToTextRedirector redirect(control);


?


?


6、常量


下面的枚舉值是HitTest函數(shù)的返回值,用來判斷鼠標(biāo)的點擊點在文本框中位置(像素)


enum wxTextCtrlHitTestResult


{


? ? wxTE_HT_UNKNOWN = -2, ? // this means HitTest() is simply not implemented


? ? wxTE_HT_BEFORE, ? ? ? ? // either to the left or upper


? ? wxTE_HT_ON_TEXT, ? ? ? ?// directly on


? ? wxTE_HT_BELOW, ? ? ? ? ?// below [the last line]


? ? wxTE_HT_BEYOND ? ? ? ? ?// after [the end of line]


};




7、事件處理


EVT_TEXT(id, func)


EVT_TEXT_ENTER(id, func)


EVT_TEXT_URL(id, func) ?


EVT_TEXT_MAXLEN(id, func)


官方文檔只提到上述4個時間映射宏,應(yīng)該還是有很多的,不是很理解這個地方哈~


?


8、成員函數(shù)(常用)


1、void AppendText(const wxString& text) //追加文本到末尾,文本追加后插入點仍在文本框的末尾,可以使用GetInsertionPoint和SetInsertionPoint來設(shè)置插入點


?


2、virtual void Clear() //清空控件中的文本,該函數(shù)將生成wxEVT_COMMAND_TEXT_UPDATE事件


?


3、wxString GetValue() const//獲取控件中的字符串(帶有換行標(biāo)記)


?


4、bool IsEditable() const //可編輯返回true


?


5、bool IsEmpty() const //控件中無文本返回true


?


6、bool IsModified() const //控件中文本修改返回true


?


7、bool SetDefaultStyle(const wxTextAttr& style) //設(shè)置文本樣式(在AppenText之前使用)


?


8、virtual void SetEditable(const bool editable) //使控件變?yōu)榭删庉?/p>


?


9、void SetValue(const wxString& value) //替換控件中的字符串

【Aegisub相關(guān)/可視化界面(GUI)】wxWidgets庫 - wxTextCtrl學(xué)習(xí)筆記的評論 (共 條)

分享到微博請遵守國家法律
漯河市| 东光县| 资中县| 永新县| 垦利县| 遂宁市| 信宜市| 兰西县| 清涧县| 乳山市| 临海市| 祥云县| 安义县| 新津县| 丹凤县| 米泉市| 沽源县| 海盐县| 盐山县| 江安县| 浏阳市| 永安市| 林西县| 南岸区| 宜章县| 丰顺县| 黄浦区| 黔西县| 漠河县| 定日县| 新蔡县| 安泽县| 九龙城区| 绥滨县| 凉山| 蒙山县| 寿宁县| 广宗县| 当雄县| 永春县| 太仓市|