在文框视图框架中,视图上的static控件的透明和CDialog类有所不同。代码如下:
HBRUSH CMainView::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)
{
HBRUSH hbr = CFormView::OnCtlColor(pDC, pWnd, nCtlColor);
if(CTLCOLOR_STATIC == nCtlColor)//这一行不同
{
pDC->SetBkMode(TRANSPARENT);
return (HBRUSH)::GetStockObject(NULL_BRUSH);
}
//CString str;
//str.Format(_T("%d\n"),pWnd->GetDlgCtrlID());
//TRACE(str);
return hbr;
}
在判断static控件的ID时,不是用某个具体控件的ID,而是CTLCOLOR_STATIC,表示一类控件。
CStatic控件两次设置文字,会重影,解决方法如下:
CRect rt;
m_staTitle.GetWindowRect(&rt);
ScreenToClient(&rt);
InvalidateRect(rt);
亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。