怎样修改VS的MFC工程中,静态文本的格式,如字体,颜色,大小等

分别以单文档工程和基于对话框的工程来解决... 分别以单文档工程和基于对话框的工程来解决 展开
 我来答
anddygon
2012-08-25 · TA获得超过230个赞
知道小有建树答主
回答量:143
采纳率:0%
帮助的人:88.3万
展开全部
重载对话框的WM_CTLCOLOR对应的虚函数
下面的代码是一个个更改
如果你想把同类的控件改变颜色
可以用
if(nCtlColor==CTLCOLOR_STATIC)

HBRUSH CSetPaintPenDlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)
{
HBRUSH hbr = CDialog::OnCtlColor(pDC, pWnd, nCtlColor);
// TODO: 在此更改 DC 的任何特性
// TODO: 如果默认的不是所需画笔,则返回另一个画笔
if (pWnd==this)
{
return m_bkBrush;
}
if (pWnd->GetDlgCtrlID()==IDC_REMARK)
{
pDC->SetBkMode(TRANSPARENT);
pDC->SetTextColor(RGB(255,0,0));
CFont *pOldFont=pDC->SelectObject(&m_font);
return (HBRUSH)GetStockObject(NULL_BRUSH);
}
if (IDC_STATIC1==pWnd->GetDlgCtrlID())
{
pDC->SetBkMode(TRANSPARENT);
return (HBRUSH)GetStockObject(NULL_BRUSH);
}
if (IDC_STATIC2==pWnd->GetDlgCtrlID())
{
pDC->SetBkMode(TRANSPARENT);
return (HBRUSH)GetStockObject(NULL_BRUSH);
}
if (IDC_STATIC3==pWnd->GetDlgCtrlID())
{
pDC->SetBkMode(TRANSPARENT);
return (HBRUSH)GetStockObject(NULL_BRUSH);
}
if (pWnd->GetDlgCtrlID()==IDC_RADIO1)
{
pDC->SetBkMode(TRANSPARENT);
return (HBRUSH)GetStockObject(NULL_BRUSH);
}
if (pWnd->GetDlgCtrlID()==IDC_RADIO2)
{
pDC->SetBkMode(TRANSPARENT);
return (HBRUSH)GetStockObject(NULL_BRUSH);
}
if (pWnd->GetDlgCtrlID()==IDC_RADIO3)
{
pDC->SetBkMode(TRANSPARENT);
return (HBRUSH)GetStockObject(NULL_BRUSH);
}
return hbr;
}
vkjskeyi
2012-08-26 · 超过23用户采纳过TA的回答
知道答主
回答量:172
采纳率:100%
帮助的人:77.3万
展开全部
重载WM_CTLCOLOR
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式