子类化组合框问题

zjfhgdx zjfhgdx 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区

写了一个文本框,就是上面那个好看点的那个。

然后写了一个自己的组合框,在onctlcolor中子类化组合框的文本框部分。

代码如下:
HBRUSH CMyComb::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)
{
HBRUSH hbr = CComboBox::OnCtlColor(pDC, pWnd, nCtlColor);

// TODO: 在此更改 DC 的任何属性
if (nCtlColor==CTLCOLOR_EDIT)
{
if (m_MyEdit.GetSafeHwnd()==NULL)
{
m_MyEdit.SubclassWindow(pWnd->m_hWnd);
MessageBox(_T("已经被子类化"));
}
}
// TODO: 如果默认的不是所需画笔,则返回另一个画笔
return hbr;
}

F5,运行后弹出"已经被子类化",说明程序是运行到m_MyEdit.SubclassWindow(pWnd->m_hWnd)这行的,但为什么界面没有变化,具体看上图
...全文
评论 6
收藏 已收藏
分享
返回顶部
zjfhgdx
VC/MFC 16,550 成员 421,606 内容