Qt:对话框程序中新创建的窗口无法点击,一直处于禁用状态WS_DISABLED
主程序为对话框程序,点击一个按钮则创建一个新的顶层窗口,但新创建的窗口无法点击,一直处于禁用状态WS_DISABLED。无论加什么属性,Qt::Window,Qt::Popup,继承QMainWindow或QDialog或QWidget等等,只要不是子窗口,则无法点击,Spy++查看窗口属性包含了WS_DISABLED。如果改为子窗口显示,则正常。
经过跟踪发现,Qt会在新窗口show显示时,判断isModal,如果是模态(父窗口),则创建的子窗口一律为禁用状态。因此,解决方法很简单,去掉主窗口的modal属性,即可。
转载请注明来源,谢谢。
有偿解决C++编程问题,承接项目定制开发;寻一份全职或兼职Windows C++开发工作。联系邮箱:[email protected]。