MFC 学习之 颜色设置<1>

来源:互联网 发布:c语言与单片机 编辑:程序博客网 时间:2024/05/21 00:46

下述方法,对按钮均无用。 VS2008。

背景可以设置,但是按钮会失效。


// 设置背景色

<pre name="code" class="cpp">// OnPaint 函数中CRect   rect; CPaintDC   dc(this); GetClientRect(rect); dc.FillSolidRect(rect,RGB(0,255,50));   //设置为绿色背景

// 此函数已废弃void SetDialogBkColor(COLORREF clrCtlBk = RGB(192, 192, 192), COLORREF clrCtlText = RGB(0, 0, 0));调用的话,在 APP InitInstince 中的 DoModal 之前



// WM_CTLCOLOR()

// 颜色刷BEGIN_MESSAGE_MAP()ON_WM_CTLCOLOR().h 文件中声明:CBrush  brush;HBRUSH  OnCtlColor(CDC* pDC,CWnd* pWnd,UINT nCtlColor);.CPP 中初始化:m_brush.CreateSolidBrush(RGB(255,0,0));  // 设置红色画笔// 实现HBRUSH CMFC_COLORDlg::OnCtlColor(CDC* pDC,CWnd* pWnd,UINT nCtlColor){    return   m_brush;}//按钮上看不到字了???<pre name="code" class="cpp">//可以根据不同的控件类型返回不同的画刷,来实现不同控件颜色的设置   CTLCOLOR_BTN                按钮控件 CTLCOLOR_DLG                对话框 CTLCOLOR_EDIT               编辑框 CTLCOLOR_LISTBOX            列表控件 CTLCOLOR_MSGBOX             消息控件 CTLCOLOR_SCROLLBAR          滚动条控件 CTLCOLOR_STATIC             静态控件 

HBRUSH CMFC_COLORDlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor){   HBRUSH hbr = CDialog::OnCtlColor(pDC, pWnd, nCtlColor);<pre name="code" class="cpp"><pre name="code" class="cpp">   if(nCtlColor==CTLCOLOR_BTN)          //更改按钮颜色 {  pDC->SetTextColor(RGB(0,0,0));  pDC->SetBkColor(RGB(121,121,255));    HBRUSH b=CreateSolidBrush(RGB(121,121,255));  return b; } else if(nCtlColor==CTLCOLOR_SCROLLBAR)  // {  pDC->SetTextColor(RGB(0,0,0));  pDC->SetBkColor(RGB(233,233,220));  HBRUSH b=CreateSolidBrush(RGB(233,233,220));  return b; } else if(nCtlColor==CTLCOLOR_EDIT)   //更改编辑框 {  pDC->SetTextColor(RGB(0,0,0));  pDC->SetBkColor(RGB(165,254,236));  HBRUSH b=CreateSolidBrush(RGB(165,254,236));  return b; } else if(nCtlColor==CTLCOLOR_STATIC)  //更改静态文本 {  pDC->SetTextColor(RGB(0,0,0));  pDC->SetBkColor(RGB(166,254,1));  HBRUSH b=CreateSolidBrush(RGB(166,254,1));  return b; } else if(nCtlColor==CTLCOLOR_DLG)   //更改对话框背景色 {  pDC->SetTextColor(RGB(0,0,0));  pDC->SetBkColor(RGB(166,254,1));  HBRUSH b=CreateSolidBrush(RGB(166,254,1));  return b; } return hbr;}





0 0
原创粉丝点击