OnCtlColor是控制項視窗函式,其畫刷句柄效果提示信息函式( afx_msg HBRUSH OnCtlColor )構成:返回值,OnCtlColor必須返回一個刷子句柄,該刷子將被用於畫出控制項的背景。參數,pDC 包含了子視窗的顯示設備環境的指針。可能是臨時的。PWnd 包含了要求顏色的控制項的指針。可能是臨時的。 NCtlColor 包含了下列值,指定了控制項的類型: CTLCOLOR_BTN 按鈕控制項 · CTLCOLOR_DLG 對話框 · CTLCOLOR_EDIT 編輯控制項 · CTLCOLOR_LISTBOX 列表框控制項 · CTLCOLOR_MSGBOX 訊息框 · CTLCOLOR_SCROLLBAR 滾動條控制項 · CTLCOLOR_STATIC 靜態控制項。
基本介紹
- 外文名:OnCtlColor
- 性質:控制項視窗函式
- 返回值::OnCtlColor
- 平台:PC端
名詞解釋,參數說明,說明,注意事項,
名詞解釋
CWnd::OnCtlColor
afx_msg HBRUSH OnCtlColor( CDC* pDC, CWnd* pWnd, UINT nCtlColor );
返回值:OnCtlColor必須返回一個刷子句柄,該刷子將被用於畫出控制項的背景。
參數說明
說明
當要畫出一個子控制項時,框架就調用這個成員函式。多數控制項將這個訊息傳送到它們的父視窗(通常是一個對話框),為使用正確的顏色畫出控制項而準備pDC。
要改變文本的顏色,使用要求的紅、綠、藍色值(RGB)調用SetTextColor成員函式。
要改變單行編輯控制項的背景顏色,在CTLCOLOR_EDIT和CTLCOLOR_MSGBOX訊息代碼中設定刷子句柄,並在回響CTLCOLOR_EDIT的代碼中調用CDC::SetBkColor函式。
不會為下拉組合框中的列表框調用OnCtlColor函式,因為下拉列表框實際上是組合框的子視窗,而不是視窗的子視窗。要改變下拉列表框的顏色,創建一個CcomboBox,在重載的OnCtlColor中的nCtlColor參數中檢查CTLCOLOR_LISTBOX。在這個處理函式中,為設定文本的背景必須使用SetBkColor成員函式。