社区
界面
帖子详情
如何使父对话框不要位于子对话框的下面
Shankr
2005-01-24 10:21:18
对话框应用程序,在对话框中点击按钮弹出一个overlapped 非模式对话框, 可是子窗口总是在父窗口的上面, 我想让他们能够相互切换,点谁谁就在上面
就像记事本中的查找对话框一样,可是我想当点击记事本的时候,查找对话框是显示在后面的,而不是总在主对话框的前面,求大虾指点~~~
...全文
157
11
打赏
收藏
如何使父对话框不要位于子对话框的下面
对话框应用程序,在对话框中点击按钮弹出一个overlapped 非模式对话框, 可是子窗口总是在父窗口的上面, 我想让他们能够相互切换,点谁谁就在上面 就像记事本中的查找对话框一样,可是我想当点击记事本的时候,查找对话框是显示在后面的,而不是总在主对话框的前面,求大虾指点~~~
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
11 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
dandycheung
2005-01-27
打赏
举报
回复
不好意思,犯了想当然的错误,MFC 一定还隐藏了一些实现细节。以下解决方案已经经过测试:
把 Create 调用写成这个形式:pdlg1->Create(IDD_DIALOG1, CWnd::GetDesktopWindow());
Shankr
2005-01-27
打赏
举报
回复
我是要设置应用程序的子窗口和父窗口的位置在Z轴上随意切换,不是和其它应用程序
用::SetWindowPos(wndTopMost ……)这个也设置不行啊
Shankr
2005-01-27
打赏
举报
回复
呵呵,谢谢 dandycheung(珠穆朗玛) 的回答。
这个方法可以做的,只是任务栏上出来两个应用程序栏了,还要加上WS_EX_TOOLWINDOW的属性。
我还通过创建两级子对话框来做到了,只不过都不是一些常规手段,觉得不爽。
因为我看到用C++ Builder 直接在窗体属性里就可以设置了,感觉应该不用复杂的做,可是用MFC却怎么也找不到那么个属性之类的东西
wave2050
2005-01-26
打赏
举报
回复
好象是创建非摸态对话框问题,::SetWindowPos(wndTopMost ……)不起作用的
tong20037
2005-01-26
打赏
举报
回复
::SetWindowPos(wndTopMost ……);
Shankr
2005-01-25
打赏
举报
回复
谢谢指教,不过我试过了,还是不行。
不知道老大能不能帮我试一下,行了告诉我大概怎么写?
我的大致如下:
父窗口的某处调用:
CDialg1 *pdlg1 = NULL; // 此为成员变量,此处示范
pdlg1 = new CDialg1();
pdlg1->Create(IDD_DIALOG1, NULL); //此处已经设置为NULL
pdlg1->ShowWindow(SW_SHOW);
?还要怎么做才能行?
dandycheung
2005-01-25
打赏
举报
回复
这也很简单,可以强行调用 API 使之脱离关系:::SetParent(pChildDlg->m_hWnd, NULL); 即可。
hxn2
2005-01-25
打赏
举报
回复
pParentWnd
Pointer to the parent window object of type CWnd to which the dialog object belongs. If it is NULL, the dialog object parent window is set to the main application window.
如果设置为NULL,他的父窗体可能还是原来的对话框
dandycheung
2005-01-25
打赏
举报
回复
不要依赖父子关系即可。也就是说你在创建子对话框的时候,把父窗口指针设置为 NULL。这样的后果是父窗口关闭时子窗口不能自动关闭,但可以通过把子窗口的指针保留到父窗口类中来模拟:显示子窗口时将该指针赋值,子窗口被关闭时将该值置为 NULL,父窗口关闭时检查该值,不为 NULL 则说明需要关闭子窗口。
hxn2
2005-01-24
打赏
举报
回复
弹出对话框用CWinThread来做应该可以
Shankr
2005-01-24
打赏
举报
回复
没有能人来回答吗?
iOS8开发技术(Swift版):SearchBar和
对话框
搜索条和
对话框
(详细内容看目录)
模式
对话框
与非模式
对话框
的区别
模式
对话框
就是不处理它就没法处理父窗口,而非模式
对话框
就是不用先处理此
对话框
也可以处理父窗口.例
子
:在桌面上右击我的电脑,选择属性,弹出系统属性窗口,点击
下面
的技术支持,弹出技术支持信息,现在再对系统属性窗口...
MFC中的模态
对话框
与非模态
对话框
的消息循环及消息传递问题(都可以通过SendMessage传递消息)
还有一个必须重载的函数就是PostNcDestroy,这也是一个虚函数,通常的非模态
对话框
是用类的指针,通过new创建的,这就需要在PostNcDestroy函数中delete掉这个指针。众所周知,在MFC程序中,窗口对象的生存期应长于...
模态
对话框
与非模态
对话框
(modeless)
其中DoModal创建的是模态的
对话框
,而Creat创建的是非模态的
对话框
下面
总结下他们的不同。 对于模态的
对话框
,在该
对话框
被关闭前,用户将不能在同一应用程序的其他地方进行工作(例如open file
对话框
),而对于非...
模式
对话框
与非模式
对话框
模式
对话框
就是不处理它就没法处理父窗口,而非模式
对话框
就是不用先处理此
对话框
也可以处理父窗口.例
子
:在桌面上右击我的电脑,选择属性,弹出系统属性窗口,点击
下面
的技术支持,弹出技术支持信息,现在再对系统属性窗口...
界面
15,979
社区成员
115,897
社区内容
发帖
与我相关
我的任务
界面
VC/MFC 界面
复制链接
扫一扫
分享
社区描述
VC/MFC 界面
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章