VC2005 MFC静态文本框背景色设置
生活随笔
收集整理的這篇文章主要介紹了
VC2005 MFC静态文本框背景色设置
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
最近在需要用MFC做一個上位機,第一次接觸這個東西我想把我在這過程中遇到的問題寫下來,希望也能幫助遇到同樣問題的朋友。有什么地方不對的請各位指正。
我在利用MFC做登錄界面時出現了一個問題。我發現如果直接有工具箱拖放一個靜態文本到程序窗口時文本框的背景顏色是灰色,字體為黑色,且在屬性窗口沒有修改文本顏色的選項。效果圖如下。
圖1 紅色矩形框中默認文本框顏色
這樣顯示就和背景顏色很不協調。我希望文本框以黑底白字顯示。由于我是第一次使用MFC做上位機,對許多東西都不明白,在網上查的資料很多是基于VC6.0開發的,關鍵還只有代碼。經過我的一番摸索我終于解決了這個問題,下面是我解決的具體步驟,希望能幫到和我一樣的小白。
1、首先在VC2005平臺上不能通過直接右擊窗口類來添加系統消息處理函數。在VC2005中我們需要在文本框所在窗口類上右鍵選擇屬性,之后點擊閃電右邊的事件圖標,如下圖。
圖2 選擇紅色箭頭所指的圖標 2、在事件中找到WM_CTLCOLOR事件,之后在右邊單元格下拉添加。 3、在類所屬cpp文件中找到下列函數。 HBRUSH CDengLuDlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor) {.......}4、在上面函數中添加下列代碼。其中IDC_STATIC_1換為你靜態文本框所對應的文本ID即可。 if( IDC_STATIC_1 == pWnd->GetDlgCtrlID())//判斷發出消息的空間是否是該靜態文本框{pDC->SetTextColor(RGB(255,255,255));//設置文本顏色為白色pDC->SetBkMode(OPAQUE);//設置文本背景模式為透明pDC->SetBkColor(RGB(0,0,0));//設置文本背景為黑色hbr=CreateSolidBrush(RGB(0,0,0));//控件的背景色為黑色}5、最后運行時效果如下。
圖 ?3 最終運行效果文本框黑底白字顯示 最后感謝附上幫助過我的帖子: http://www.cnblogs.com/qingergege/p/5147988.html 編程中如有問題可以查閱微軟MSDN幫助工具。
總結
以上是生活随笔為你收集整理的VC2005 MFC静态文本框背景色设置的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: IIS_设置64位机器上的(IIS6/I
- 下一篇: ERROR: Failed to res