关于对话框全屏显示出现的问题

shan_hy 2004-11-30 01:22:25
我的工程是基于对话框的,对话框标题栏被去掉,在OnInitDialog函数中写入
RECT rc;

int cx=::GetSystemMetrics(SM_CXSCREEN);
int cy=::GetSystemMetrics(SM_CYSCREEN);

::SetWindowPos(m_hWnd, NULL, 0, 0, cx, cy,
SWP_NOMOVE | SWP_NOZORDER | SWP_NOACTIVATE);

结果对话框是全屏显示了,但问题是当对话框结束后,在windows任务栏上仍有该对话框的任务切换标志,需要点一下才能去掉,这是为什么,实在想不明白,请各位帮帮忙,谢谢!
...全文
135 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
shan_hy 2004-11-30
  • 打赏
  • 举报
回复
试了一下,果然只能加SWP_NOMOVE属性,老板要做界面,没办法,只能把我的单文档改成dlg,还比较好做,然后再create个childvew,郁闷,好久没搞基于对话框的程序了,这里多谢大家了!
aoosang 2004-11-30
  • 打赏
  • 举报
回复

//去除标题和边框
SetWindowLong(m_hWnd, GWL_STYLE, GetWindowLong(m_hWnd, GWL_STYLE) &
(~(WS_CAPTION | WS_BORDER |WS_CHILD )));
// 置对话框为最顶端并扩充到整个屏幕
::SetWindowPos(m_hWnd, HWND_TOPMOST,
-(GetSystemMetrics(SM_CXBORDER)+1),
-(GetSystemMetrics(SM_CYBORDER)+20),
cx+1,cy+20, SWP_NOZORDER);
cziy122 2004-11-30
  • 打赏
  • 举报
回复
::SetWindowPos(m_hWnd,&wndTop, 0, 0, cx, cy,SWP_NOMOVE );
DentistryDoctor 2004-11-30
  • 打赏
  • 举报
回复
::SetWindowPos(m_hWnd, NULL, 0, 0, cx, cy,SWP_NOZORDER);
or
::MoveWindow(m_hWnd,0,0,cx,cy,TRUE);
老夏Max 2004-11-30
  • 打赏
  • 举报
回复
关注一下,呵呵
如果可以的话,可以将程序发到:xia_qingqi@broadxent.com.cn
我帮你看看!注明帖子的URL!

15,979

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 界面
社区管理员
  • 界面
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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