VC设置控件的字体颜色和背景颜色和字体大小和样式

VC设置控件的字体颜色和背景颜色

//下面的函数是窗体的系统函数
HBRUSH CAutoARDlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)
{
 HBRUSH hbr = CDialog::OnCtlColor(pDC, pWnd, nCtlColor);

 switch(nCtlColor)
 {
  case CTLCOLOR_STATIC: //对所有静态文本控件的设置
  {
   if(pWnd->GetDlgCtrlID()==IDC_STATIC0000)
   {
    pDC->SetTextColor(RGB(255,0,0)); //设置字体颜色
    pDC->SetBkColor(RGB(0,192,192));//设置字体背景颜色
    HBRUSH b=CreateSolidBrush(RGB(192,192,192)); //设置控件背景颜色
    return b;
   }
   break;
  }
  default:
  break;
 }
 
 return hbr;
}

 


设置控件的字体大小和样式

 CFont *my_font=new CFont();//注意初始化,不能为空
 CStatic*pStatic=(CStatic*)GetDlgItem(IDC_STATIC0000);
 my_font->CreatePointFont(160,"Arial");  //字体大小、字体名称
 pStatic->SetFont(my_font);
 //my_font->DeleteObject();  //如果在这里进行删除则字体设置就没有效果了,所以建议my_font定义为全局变量,然后在窗体销毁的时

候进行删除

 

    一。做成一个函数,改变字体大小,方法如下:
      1。在最开头声明一个全局的字体指针 CFont *my_font=new CFont();//注意初始化,不能为空
      2。在需要改变字体的地方调用函数:
 set_font(60,my_font,"隶书"); //字体大小、指针、名称
 GetDlgItem(IDC_anniu)->SetFont(my_font);//改变字体
      3。对与不同的字体,你需要设置不同的字体指针就可以了。
      4。注意在退出时要删除字体,否则多次调用出现问题
 BOOL CMyDlg::DestroyWindow()
 {
 if (my_font)
  my_font->DeleteObject();
  return CDialog::DestroyWindow();
 }

你可能感兴趣的:(VC++)