怎么更改mfc静态控件的文字和颜色?

 我来答
渠振钟离傲冬
2019-10-12 · TA获得超过3771个赞
知道大有可为答主
回答量:3089
采纳率:31%
帮助的人:178万
展开全部
在对话框的OnCtrlColor消息响应函数里修改对话框中的控件的颜色
1、OnCtlColor是响应WM_CTLCOLOR消息的函数。当子控件将要被绘制的时候,就会发送一个WM_CTLCOLOR消息给它的父窗口(通常是对话框),父窗口准备正确的颜色来绘制子窗口。在一个对话框中,每一个控件的绘制都会发送这个消息,也就是说这个OnCtlColor函数会被调用多次。OnCtlColor是一个虚函数,在没有被覆盖之前,直接调用父类的OnCtlColor函数,返回一个画刷句柄,并用这个返回的画刷句柄去绘制这个控件。因此,我们可以在这个函数中来设置控件的背景和控件上文字的颜色、文字字体及文字的背景色,但是对于Button控件,却不能直接来改变背景颜色。
2、Button是一种自绘制控件,在自绘制之前就会调用一个虚函数CButton;;DrawItem(),因此,要想改变Button的背景及字体,就要定义一个Button类从CButton派生出来,并且覆盖DrawItem(),则当要绘制这个按钮的时候,框架就会调用这个函数。来改变Button的背景颜色和字体,此外,还要设置控件的ownerdraw属性.
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式