怎样隐藏对话框?

linhua_zhang 2006-04-10 09:58:50
为什么在OnInitDialog中加入ShowWindow(SW_HIDE)后不能隐藏对话框呢?在那个时候不是有窗口句柄了吗,而在一个按钮事件中调用ShowWindow(SW_HIDE)就可以隐藏窗口?是什么原因啊?
...全文
196 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
lixiaosan 2006-04-10
  • 打赏
  • 举报
回复
在 CTestDlg 处理 WM_SHOWWINDOW 并添上以下代码

void CTest6Dlg::OnShowWindow(BOOL bShow, UINT nStatus)
{

if( GetStyle() & WS_VISIBLE ) {
CDialog::OnShowWindow(bShow, nStatus);
} else {
long Style = ::GetWindowLong(*this, GWL_STYLE);
::SetWindowLong(*this, GWL_STYLE, Style | WS_VISIBLE);
CDialog::OnShowWindow(SW_HIDE, nStatus);
}
}
linhua_zhang 2006-04-10
  • 打赏
  • 举报
回复
我要的是模态对话框,又想在对话框未出现时就隐藏掉,我在OnInitDialog和OnCreate中用ShowWindow(SW_HIDE)都没有效果,要怎样做?
kugou123 2006-04-10
  • 打赏
  • 举报
回复
把你的对话框改为非模态对话框

15,976

社区成员

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

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