mfc 改變對話方塊背景顏色

2021-06-03 06:53:02 字數 1520 閱讀 1631

----  

其中函式的第乙個引數指定了背景顏色,第二個引數指定了文字顏色。

下面的例子是將應用程式對話方塊設定為藍色背景和紅色文字,步驟如下:  

----  

①  新建乙個基於dialog的mfc  

----  

②  ::initinstance()中新增如下**:  

bool  

:  initinstance  

(  )----  

編譯並執行,此時對話方塊的背景色和文本色已發生了改變。值得注意的

是:在呼叫domodal()之前必須先呼叫setdialogbkcolor,且此方法是將改變

應用程式中所有的對話方塊顏色,並不能針對某乙個指定的對話方塊。

方法二:過載onpaint(),即wm_paint訊息。有關**如下(以上例工程為準):  

void  

cexampledlgdlg::onpaint()  

方法三:過載onctlcolor  

(cdc*  

pdc,  

cwnd*  

pwnd,  

uint  

nctlcolor),

即wm_ctlcolor訊息。具體步驟如下(以上例工程為準):  

----  

①在cexampledlgdlg的標頭檔案中,新增一cbrush的成員變數:  

class  

cexampledlgdlg  

:  public  

cdialog

;----  

②在oninitdialog()函式中新增如下**:  

bool  

cexampledlgdlg::oninitdialog()  

----  

③利用classwizard過載onctlcolor(…),即wm_ctlcolor訊息:  

hbrush  

cexampledlgdlg::onctlcolor

(cdc*  

pdc,  

cwnd*  

pwnd,  

uint  

nctlcolor)  

方法四:還是過載onctlcolor  

(cdc*  

pdc,  

cwnd*  

pwnd,  

uint  

nctlcolor),

即wm_ctlcolor訊息。具體步驟如下(以上例工程為準):  

----  

步驟①、②同上方法三中的步驟①、②。  

----  

步驟③利用classwizard過載onctlcolor(…)(即wm_ctlcolor訊息)時則有

些不同:  

hbrush  

cexampledlgdlg::onctlcolor

(cdc*  

pdc,  

cwnd*  

pwnd,  

uint  

nctlcolor)  

MFC 如何改變對話方塊的預設背景顏色

下面介紹三種方法 實現改變對話方塊的預設背景顏色 呼叫setdialogbkcolor rgb 160,32,240 即可以改變背景顏色 注意這裡繪製的顏色是針對程式中所有的對話方塊 setdialogbkcolor rgb 0,0,255 rgb 255,0,0 前乙個rgb是背景色,後一rgb是...

MFC 如何改變對話方塊的預設背景顏色

下面介紹三種方法 實現改變對話方塊的預設背景顏色 呼叫setdialogbkcolor rgb 160,32,240 即可以改變背景顏色 注意這裡繪製的顏色是針對程式中所有的對話方塊 setdialogbkcolor rgb 0,0,255 rgb 255,0,0 前乙個rgb是背景色,後一rgb是...

VC 中改變對話方塊背景顏色

其中函式的第乙個引數指定了背景顏色,第二個引數指定了文字顏色。下面的例子是將應用程式對話方塊設定為藍色背景和紅色文字,步驟如下 cexampledlgdlg dlg m pmainwnd dlg 先於domodal 呼叫,將對話方塊設定為藍色背景 紅色文字 setdialogbkcolor rgb ...