2008-06-26 23:06:11
| 分類:
技術積累篇
| 標籤:|字型大小
大中小訂閱
---- 其中函式的第乙個引數指定了背景顏色,第二個引數指定了文字顏色。
下面的例子是將應用程式對話方塊設定為藍色背景和紅色文字,步驟如下:
---- 編譯並執行,此時對話方塊的背景色和文本色已發生了改變。值得注意的
是:在呼叫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)
---- 編譯並執行即可。
---- 關於如何改變對話方塊背景顏色的問題,可能還有很多種不同方法可以實現,
筆者在這僅舉出四種常見的方法。其中方法三的程式設計似乎有點不太規範,方法四則
要比方法三正統些,筆者這樣的對比舉例是為了拓寬vc程式設計愛好者特別是初學者的
程式設計思路,讀者可以根據實際情況選用其中的一種。如果再結合《軟體報》2023年第
5期中改變對話方塊上的控制項顏色,相信會使您的mfc應用程式"增色"不少。
mfc 改變對話方塊背景顏色
其中函式的第乙個引數指定了背景顏色,第二個引數指定了文字顏色。下面的例子是將應用程式對話方塊設定為藍色背景和紅色文字,步驟如下 新建乙個基於dialog的mfc initinstance 中新增如下 bool initinstance 編譯並執行,此時對話方塊的背景色和文本色已發生了改變。值得注意的...
VC 中改變對話方塊背景顏色
其中函式的第乙個引數指定了背景顏色,第二個引數指定了文字顏色。下面的例子是將應用程式對話方塊設定為藍色背景和紅色文字,步驟如下 cexampledlgdlg dlg m pmainwnd dlg 先於domodal 呼叫,將對話方塊設定為藍色背景 紅色文字 setdialogbkcolor rgb ...
如何改變對話方塊的背景顏色
1 如何改變對話方塊的背景顏色 2 如何在onctlcolor裡使對話方塊透明 以及如何改變對話方塊外觀 方法一 hbrush cmydlg onctlcolor cdc pdc,cwnd pwnd,uint nctlcolor 方法二 我們可以改變對話方塊的背景顏色,或對話方塊中的控制項顏色以使得...