在Mac上使用Qt :: WindowModal的QDialog

问题描述

我需要一个阻塞的QDialog(下面的主应用程序在显示时应处于非活动状态),它可以在其上方显示子窗口。我正在使用此QDialog来显示VST插件,如果需要,可以免费创建多个子窗口。

如果我将其设置为ApplicationModal,则QDialog会很好地显示,但是任何子窗口都会显示在QDialog下,因此无法使用。

enter image description here

显示任何插件的ApplicationModal QDialog

enter image description here

ApplicationModal QDialog,带有一个试图显示子窗口的插件显示在QDialog后面,无法访问)

如果我将其设置为WindowModal,则子窗口会显示并按预期方式工作(在QDialog的顶部),但是QDialog本身看起来很奇怪:它与主应用程序共享其标题栏,并且如果不移动该控件,将无法移动它整个应用程序。

enter image description here

WindowModal QDialog,未显示插件;注意与主应用程序共享的标题

enter image description here

WindowModal QDialog,其插件按预期在顶部显示一个子窗口

所以...我有点卡在这里。有没有一种方法可以使QDialog WindowModal保持其标题栏和在主应用程序上的自由移动,就像ApplicationModal对话框一样?

我正在macOS Catalina上使用Qt 5.15。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)