在VC6中,我用SetDlgItemText输出字符,默设为黑色,我想把输出的字改...

发布网友 发布时间:2024-10-23 21:11

我来回答

2个回答

热心网友 时间:2天前

动态改变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();

热心网友 时间:2天前

修改控制颜色那个函数的数值就能改了呀

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com