在VC6中,我用SetDlgItemText输出字符,默设为黑色,我想把输出的字改为红色,怎么办,用的是C,不会C++

 我来答
zhjiemm
2012-01-01 · TA获得超过2643个赞
知道大有可为答主
回答量:1834
采纳率:75%
帮助的人:726万
展开全部
动态改变Dialog中IDC_STATIC的文字:
SetDlgItemText(IDC_STATIC,"ABC");

动态改变Dialog中IDC_STATIC文字的颜色:
重载OnCtlColor函数,在要更改颜色的时候向对话框发送WM_CTLCOLOR就行了。

1.在对话框的类中加入成员:

CBrush m_brush;
COLORREF m_color;

2.在OnInitDialog()中,加入

m_brush.CreateSolidBrush(RGB(255,255,255));
//此处设置的RGB值可以改变控件的背景色。

m_color=RGB(0,0,0)
//此处设置控件的文字初始颜色。

3.响应WM_ONCTLCOLOR消息,重载OnCtlColor()函数,加入:
if(nCtlColor== CTLCOLOR_STATIC){
pDC->SetBkMode(TRANSPARENT);
pDC->SetTextColor(m_color);
return (HBRUSH)m_brush.GetSafeHandle();
}

4.需要改变颜色时
m_color=RGB(128,0,255);//此处改变字体的颜色
CStatic* m_pStatic1=(CStatic*)GetDlgItem(IDC_STATIC1);
m_pStatic1->RedrawWindow();

参考资料: http://hi.baidu.com/jjzhang166/blog/item/51dcce0003958014728b655e.html

匿名用户
2012-01-10
展开全部
修改控制颜色那个函数的数值就能改了呀
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式