C&C++   发布时间:2022-04-03  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了c – 在模态对话框处于活动状态时隐藏主MFC窗口?大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个原生的C MFC应用程序.它有一个基于CWnd的主窗口,用户操作可以创建一个模态对话框.当对话框处于活动状态时,我希望主窗口消失,对话框可见,主窗口的图标保留在任务栏中.

我怎么能做到这一点?

如果我隐藏主窗口(ShowWindow(SW_HIDE)),任务栏图标将消失.如果我最小化主窗口(SW_MINIMIZE),则图标仍然存在.但是,由于对话框由主窗口拥有,因此也会隐藏对话框.

创建对话框后,单击任务栏图标可使对话框可见.当然,我不想要求用户这样做.

即使我在对话框的OnInit处理程序中插入ShowWindow(SW_SHOW),对话框仍然不可见.但间谍显示其可见位已设置.如果我将SetWindowActive添加到OnInit也是如此.

我对改变UI设计不感兴趣.当对话框处于活动状态时,用户仅与其交互,并且对主窗口中的任何内容都不感兴趣.因此,主窗口应该消失.

在WinXP32下使用Windows VS2005.

解决方法

好吧,在您创建对话框并将其显示为模态的代码块中,只要您将桌面窗口设置为对话框的父窗口,就可以对应用程序的主窗口(显示/隐藏)执行任何操作.通常,CDialog和衍生物的构造函数为父窗口采用NULL的认参数,其中框架最终取代AfxGetMainWnd().而是将CWnd :: GetDesktopWindow()作为对话框的父级传递,然后您应该可以隐藏主窗口.但是,你仍然可能对任务栏有问题 – 但是我会让别人给出提示,因为我对此一无所知.

大佬总结

以上是大佬教程为你收集整理的c – 在模态对话框处于活动状态时隐藏主MFC窗口?全部内容,希望文章能够帮你解决c – 在模态对话框处于活动状态时隐藏主MFC窗口?所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。
标签: