使用 Pyside,但一般 Qt 问题:
我正在构建一个带有控制 QMainWindow 的 Qt 应用程序。从这个窗口,用户可以打开其他 QMainWindows(或 QDialogs),并从其中一些她可以打开更多。用户打算将第一个 QMainWindow 视为“应用程序”,而将其他 QMainWindow 视为对或多或少相同数据的许多不同视图。
所以我希望所有的窗口都可以独立堆叠,这样用户就可以根据自己的要求设置屏幕。特别是,如果需要,我希望用户能够将第一个 QMainWindow 置于顶部。但是我真的不希望每个窗口都有自己的任务栏条目(尽管我可以忍受)。此外,我希望它们一起最小化和恢复,并且我希望它们在第一个主窗口关闭时全部关闭。
如果我将它们全部放在第一个主窗口上,它会很好地工作,只是它们留在上面,这不是我想要的。
相反,我通过使它们都独立于 parent = None 来使其工作。然后我将它们全部注册到主窗口并在它关闭时将它们全部关闭。但这使它们有点过于独立——它们分别最小化并有自己的任务栏条目。
我错过了一些明显的解决方法吗?有什么简单的方法(一面旗帜?)来阻止孩子们站在父母的头上吗?
或者是否有一些我想要打破的 UI 指南?
或者是否有更清洁的设计?我想添加一个他们都可以继承的虚拟父母,但也许这很混乱。那位父母需要视觉上的存在吗?我不想那样。
建议?