一 設定字型
在oninitdialog()函式中新增**
方法1:
newfont.createpointfont(160,l"楷體");
m_static_xsdj.setfont(&newfont);
方法2:
cfont* font;
font=m_static_xsdj.getfont();//獲取cfont物件
logfont lf;
font->getlogfont(&lf);//獲取logfont結構體
lf.lfheight=-26; //修改字型大小
lf.lfitalic=true; //傾斜
lf.lfweight=400; //修改字型的粗細
newfont.createfontindirectw(&lf);//建立乙個新的字型
m_static_xsdj.setfont(&newfont);
二 修改靜態文字框控制項中文字顏色、文字背景顏色、和控制項背景顏色
首先應當明確的是,在那個函式中下手(寫**),答案是
onctlcolor()函式中,這個函式是用於響應wm_ctlcolor訊息的,當控制項需要重繪時會發出這個訊息。
hbrush cdlgxsdj::onctlcolor(cdc* pdc, cwnd* pwnd, uint nctlcolor)
三個引數:pdc表示與當前控制項相關聯的裝置上下文,pwnd是當前控制項的指標,nctlcolor 表示控制項的型別,返回值是乙個hbrush控制代碼,該控制代碼使用者重繪控制項的背景色。
然後說一下settextcolor()、setbkcolor()、和setbkmode()三個函式
settextcolor()函式很明顯是設定文字顏色的,而setbkcolor()函式不是用來設定控制項背景顏色的,而是用來設定文字背景顏色的(就是包含文字的矩形)、
setbkmode()是用來設定文字背景模式的,引數只有兩個選擇opaque、transparent表示是否透明。
那麼控制項的背景顏色怎麼設定呢?答案是通過返回的hbrush控制代碼。
hbrush cdlgxsdj::onctlcolor(cdc* pdc, cwnd* pwnd, uint nctlcolor)
return hbr;//返回用於重繪控制項背景的畫刷
}
MFC中修改靜態文字框中文字的字型 顏色
假設有乙個靜態文字框控制項,其id為 idc static xsdj,且關聯乙個control類的cstatic型別的變數m static xsdj。設定字型時自然要用到cfont類,下面介紹兩種方法,兩種方法都要先在標頭檔案中新增乙個變數cfont newfont,切記要宣告稱類的成員變數,不能是...
MFC之靜態文字框的使用
如果我們想在程式中動態建立靜態文字框,而不是像前面那樣直接從toolbox中拖到對話方塊模板上,那麼就需要使用cstatic類的成員函式create。create函式的原型如下 virtual bool create lpctstr lpsztext,dword dwstyle,const rect...
MFC 文字框 用法
mfc裡面的edit control控制項的用法是怎麼樣的,1.怎麼樣才能賦值給edit control控制項並在edit control控制項顯示出來 2.怎麼取得edit control控制項的值並傳遞給乙個變數?希望各位大俠幫幫忙!獲得edit cedit pboxone pboxone ce...