2024年5月14日发(作者:)
VC2008界面编程疑难问题汇总
子窗口全屏显示时闪烁问题
具体现象:
子窗口在全屏显示前会恢复原样(Normal)后再最大化显示,期间由于会恢复原样造成
界面闪烁。
解决办法:
为CChildFrame添加WM_SIZE消息,在自动生成的OnSize方法中添加一行代码
this->MDIMaximize();即可。代码如下:
void CChildFrame::OnSize(UINT nType, int cx, int cy)
{
CMDIChildWndEx::OnSize(nType, cx, cy);
// TODO: 在此处添加消息处理程序代码
this->MDIMaximize();
}
2.去掉主窗口标题中的子画面名称
在CMainFrame中的PreCreateWindow方法中改变风格即可,代码如下:
BOOL CMainFrame::PreCreateWindow(CREATESTRUCT& cs)
{
if( !CMDIFrameWndEx::PreCreateWindow(cs) )
return FALSE;
// TODO: 在此处通过修改
// CREATESTRUCT cs 来修改窗口类或样式
m_strTitle = _T("去掉子画面标题");
=WS_OVERLAPPEDWINDOW;
return TRUE;
}
3.在没有MDI子窗口打开时在主窗口添加右键菜单
发布者:admin,转转请注明出处:http://www.yc00.com/web/1715679910a2655243.html
评论列表(0条)