在多行模式下的cedit類提供void cedit::setrectnp( lpcrect lprect)函式,此函式用來調整文字編輯的區域,用這個函式可以設定上下左右margins,而void setmargins( uint nleft, uint nright)函式只能設定左右margins。
crect rc = crect(0,0,0,0);
edit.getclientrect(&rc);
rc.deflaterect(10,10,10,10);
edit.setrectnp(&rc);
這段**設定上下左右margin都是10。
水平有限,到目前還沒找到單行模式下讓文字框的文字垂直居中的辦法,因此想到了利用多行文字框來模擬單行然後設定垂直居中的辦法。
crect rc = crect(0,0,0,0);
edit.getclientrect(&rc);
cdc* pdc = edit1.getdc();
textmetric tm;
pdc->gettextmetrics(&tm);
int nfontheight = tm.tmheight + tm.tmexternalleading;
int nmargin = (rc.height() - nfontheight) / 2;
rc.deflaterect(0,nmargin);
edit.setrectnp(&rc);
將文字框的屬性設定為es_multiline | es_autohscroll且不能es_autovscroll | es_wantreturn。
文字編輯框
在介面程式設計中,文字編輯框是使用頻率最高的控制項之一,為了方便操作,mfc提供了cedit類來管理文字編輯框。建立文字編譯框有兩種方式 第一種 在對話方塊模式下,編輯資源檔案,撰寫建立對話方塊的指令碼,可在表示對話方塊指令碼的一對識別符號begin和end中間插入形如 edittext idc m...
MFC文字編輯框
mfc文字編輯框裡面的2個屬性multiline和auto hscroll,先看vs給的說明 multiline 如果控制項文字對控制項寬度而言太長,測將文字折為多行。auto hscroll 當使用者在行尾鍵入字元時,自動是文字滾動到左側。先試試multiline true auto hscrol...
QTextEdit文字編輯框的游標移動
1.問題描述 2.解決辦法 呼叫qtextedit類的成員函式 movecursor 可以設定游標的位置。其函式原型如下 void qtextedit movecursor qtextcursor moveoperation operation,qtextcursor movemode mode q...