首页 > 代码库 > 改变静态编辑框static text背景色,字体设置及字体背景
改变静态编辑框static text背景色,字体设置及字体背景
IDC_ShowTime为编辑框ID
m_showtime为静态编辑框的变量
1.dlg.h中
CBrush m_showtimeBrush;
CFont m_editFont;//字体
2.OnInitDialog()中
m_showtimeBrush.CreateSolidBrush(RGB(204,0,204)); ///编辑框背景颜色
CEdit *m_EditAa=(CEdit *)GetDlgItem(IDC_ShowTime); //IDC_ShowTime为编辑框ID
m_editFont.CreatePointFont(220,_T("微软雅黑")); //选择字体
m_EditAa->SetFont(&m_editFont);
3.在类向导中添加OnCtlColor
HBRUSH CmyDlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)
{
HBRUSH hbr = CDialogEx::OnCtlColor(pDC, pWnd, nCtlColor);
if(m_showtime.m_hWnd == pWnd->m_hWnd)///m_showtime为静态编辑框的变量
{ //pDC->SetBkColor(RGB(0,255,0)); ///字体的背景
pDC->SetBkMode(TRANSPARENT); ///编辑框透明
pDC->SetTextColor(RGB(255, 255, 255));//文字颜色
pDC->SelectObject(&m_editFont);
return m_showtimeBrush;
}// TODO: 如果默认的不是所需画笔,则返回另一个画笔
return hbr;
}
结果:(对话框原先也设置了,紫色部分为静态编辑框效果)
改变静态编辑框static text背景色,字体设置及字体背景