改變MFC控制項背景顏色

2021-06-22 05:47:54 字數 736 閱讀 7198

這裡講述兩種改變mfc控制項背景顏色的方法:

方法一:用onctlcolor訊息函式,改變特定控制項的背景

首先在標頭檔案的類中定義cbush類的變數 brush  如語句:cbrush brush;

然後在原始檔的建構函式中初始化:brush.createsolidbrush(rgb(255,0,0));

rgb( , , ) 控制顏色,分別為紅,綠,藍,三個一樣顯示灰色背景,都為255為白色,都為0為黑色

然後再訊息函式中寫**如下:

hbrush cfileplaydlg::onctlcolor(cdc* pdc, cwnd* pwnd, uint nctlcolor)

return hbr;

}方法二:

也用這個訊息函式

hbrush cfileplaydlg::onctlcolor(cdc* pdc, cwnd* pwnd, uint nctlcolor)

return hbr;

}// 這裡指定控制項型別為靜態型別,可以指定為其他型別,如ctlcolor_btn 按鈕控制項 · ctlcolor_dlg 對話方塊 · ctlcolor_edit 編輯控制項 · ctlcolor_listbox 列表框控制項 · ctlcolor_msgbox 訊息框 · ctlcolor_scrollbar 滾動條控制項 · ctlcolor_static 靜態控制項

這個方法省略了定義brush這個變數,直接在函式中用createsolidbrush生成乙個畫刷b,然後返回b。

MFC改變控制項顏色

from mfc應用程式中,要改變控制項的背景色可通過過載onctlcolor 函式來實現。方法是在該函式中設定所需顏色後再返回乙個畫刷控制代碼便可 重繪控制項背景色。onctlcolor 函式對於控制項背景色的處理是通過捕捉相應的控制項訊息來實現的。常用的此類訊息有 ctlcolor dlg 對話...

MFC 各控制項背景顏色設定

1 新增onctlcolor訊息響應函式 hbrush cdmpydlg onctlcolor cdc pdc,cwnd pwnd,uint nctlcolor case ctlcolor edit 2 wm ctlcolor訊息對應的函式為onctlcolor,onctlcolor函式的原型為 a...

改變控制項的背景顏色和字型顏色

在預設情況下,我們看到的對話方塊及其控制項的背景和字型顏色都是淺灰色的,為了美化介面我們可以使用mfc中的wm ctlcolor訊息,它的響應函式是cwnd類的onctlcolor.該函式宣告如下 afx msg hbrush onctlcolor cdc pdc,cwnd pwnd,uint nc...