MFC中改变字体及背景色

1、改变控件中字体的大小及样式
CFont m_lFont;
void xx::changeListFontSize(void)
{
 m_lFont.CreateFont(  
  25,    //nHeight  
  0,                              //nWidth  
  0,    //nEscapement  
  0,    //nOrientation  
  //FW_NORMAL,   //nWeight
  FW_MEDIUM,
  //FW_SEMIBOLD,
  FALSE,                          //bItalic  
  FALSE,                          //bUnderline  
  0,                              //cStrikeOut  
  //   ANSI_CHARSET,    
  DEFAULT_CHARSET,  //nCharSet  
  OUT_DEFAULT_PRECIS,             //nOutPrecision  
  CLIP_DEFAULT_PRECIS,            //nClipPrecision  
  DEFAULT_QUALITY,                //nQuality  
  DEFAULT_PITCH   |   FF_SWISS,   //nPitchAndFamily  
  _T("隶书"));  
 GetDlgItem(IDC_LIST_MUSIC)->SetFont(&m_lFont);
 GetDlgItem(IDC_STATIC_MUSIC)->SetFont(&m_lFont);
}
2、改变ListCtrl中表头字体的大小及样式
CFont m_hFont;
void xx::changePriceListHeadFontSize(void)
{
 m_hFont.CreateFont(  
  18,    //nHeight  
  0,                              //nWidth  
  0,    //nEscapement  
  0,    //nOrientation  
  FW_NORMAL,   //nWeight
  //FW_MEDIUM,
  //FW_SEMIBOLD,
  FALSE,                          //bItalic  
  FALSE,                          //bUnderline  
  0,                              //cStrikeOut  
  //   ANSI_CHARSET,    
  DEFAULT_CHARSET,  //nCharSet  
  OUT_DEFAULT_PRECIS,             //nOutPrecision  
  CLIP_DEFAULT_PRECIS,            //nClipPrecision  
  DEFAULT_QUALITY,                //nQuality  
  DEFAULT_PITCH   |   FF_SWISS,   //nPitchAndFamily  
  _T("黑体"));
 CHeaderCtrl* pHeaderCtrl = m_priceList.GetHeaderCtrl();
 pHeaderCtrl->SetFont(&m_hFont);
}
3、改变窗体背景色、静态框、编辑框背景色,listctrl背景色
CBrush m_brush;
在初始化中:
 GetParentFrame()->RecalcLayout();
 m_brush.CreateSolidBrush(RGB(140,20,15));
重写OnCtlColor
HBRUSH xx::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_EDIT )
 {
  if (pWnd == GetDlgItem(IDC_EDT_TEXT) || pWnd == GetDlgItem(IDC_EDT_PRICE))
  {
   pDC->SetTextColor(RGB(255,255,255));
   pDC->SetBkMode(TRANSPARENT); //背景设为透明
  }
 }
 if (nCtlColor == CTLCOLOR_STATIC)
 {
  pDC->SetTextColor(RGB(255,255,255));
  HBRUSH   hNullBr   =   (HBRUSH)::GetStockObject(NULL_BRUSH);
  pDC->SetBkMode(TRANSPARENT); //背景设为透明
  return hNullBr;
 }
 // TODO: Return a different brush if the default is not desired
 return m_brush;

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值