基于FormView界面的文档工程中改变背景色和控件颜色

来源:互联网 发布:2017微信加粉丝软件 编辑:程序博客网 时间:2024/06/07 15:59

 [问题提出]
  很多时候,改变FormView中的控件和背景颜色很重要.
  [问题解决]
  在FormView中的视图界面也是窗口,所以完全可以用改对话框的方法改FormView.
  [程序实现]
  假设你有了名为My的SDI或MDI的工程.有了Static控件,改变控件的字体色,再改变界面的颜色:
  class CMyView : public CFormView
  {
  public:
   CBrush m_Brush;
  .........
  };

  CMyView::CMyView()
   : CFormView(CMyFormView::IDD)
  {
   //{{AFX_DATA_INIT(CMyFormView)
      // NOTE: the ClassWizard will add member initialization here
   //}}AFX_DATA_INIT
   m_Brush.CreateSolidBrush(RGB(0,0,0));
  }

  HBRUSH CMyView::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor) 
  {
   HBRUSH hbr = CFormView::OnCtlColor(pDC, pWnd, nCtlColor);
   
   // TODO: Change any attributes of the DC here
   if(nCtlColor==CTLCOLOR_STATIC)
   {
      pDC->SetTextColor(RGB(255,0,0));
      pDC->SetBkColor(RGB(0,0,0));//试试没有这句会什么样;
   }   
   
   return m_Brush;
   // TODO: Return a different brush if the default is not desired
   //return hbr;
  }

原创粉丝点击