怎么分别绘制父控件和子控件?

蝴蝶辉耀龙心 2013-12-01 10:49:36
目标是希望实现:底下一个大的紫色框,上面有静态文本框,编辑框等等... 一开始是用拖控件的,字体颜色大小之类的都能实现。后来发现拖控件z顺序很乱,做底色的控件会遮住其他的控件。

不知道怎么弄就把底色做父控件,上面的控件做子控件。

调试后发现OnCtlColor函数里,
if (pWnd->GetDlgCtrlID()==IDC_STATIC_REDHPCL)
{
pDC->SetTextColor(RGB(220,20,60));
}
SetTextColor没有执行,id我是复制黏贴的。 导致子控件都是默认的样子,怎么办呀?

OnPaint()函数里:
m_static_reddpcl.SetParent(&m_childframe_4);
m_static_reddpcl.MoveWindow(15,10,100,20);
...全文
316 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
蝴蝶辉耀龙心 2013-12-02
  • 打赏
  • 举报
回复
自己找到方法了...给子控件新建一个类,继承基类后用=wm_ctlcolor消息重画 if(this->getdlgid==xxxxx) { pdc.xxxxxxx; } 但是不知道为什么好像只适合static text类型的子控件。。。

7,540

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 VC.NET
社区管理员
  • VC.NET社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧