【问题标题】:Delete Dock Widget in Qt Designer?在 Qt Designer 中删除 Dock 小部件?
【发布时间】:2011-12-03 13:08:25
【问题描述】:

我添加(通过拖放)QDockWidget 到我在 Designer 中编辑的 GUI...
现在我想删除它。

首先,我选择了可​​见对象并按下了Delete 键。
对象消失了。

但是,可以看到 QDockWidget 仍然存在于对象检查器中,
当我尝试保存我的.ui 时,我收到消息:

The container extension of the widget MainWindow (QMainWindow)
returned a widget not managed by Designer dockWidget (QDockWidget)
when queried for page #2. Container pages should only be added by
specifying them in XML returned by the domXml() method of the custom
widget.

在对象检查器中单击小部件并按 Delete 键不会执行任何操作,
并且右键单击上下文菜单没有通常的“删除”选项。
我该如何摆脱它?! :|

规格:

Windows 7 32 bit  
PyQt4

【问题讨论】:

  • 我会尽快回复。我无法保存 GUI!
  • 我设法重现了一个类似的错误,但尽管出现了错误消息,它仍然保存了文件。你确定它没有被保存吗?
  • 我不认为它是,因为在我尝试保存它之后,我使用 pyuic4 将它编译为 .py。生成的 py 文件不包含 ui 文件中的所有对象,并导致错误。但是,一旦我在设计器中重新打开那个新的 .ui 文件,QDockWidgets 就消失了,一切正常! :) 感谢您的回复!

标签: qt designer qdockwidget


【解决方案1】:

我也遇到了这个问题 - 对象检查器中的可停靠窗口,我在主窗口中看不到。因为我看不到它们,所以我找不到删除它们的方法。但是,当我保存文件时,我忽略了警告消息(与您相同)。当我重新加载保存的 ui 文件时,对象检查器中所有错误的停靠窗口都消失了。

【讨论】:

  • 这是一个圆满的结局 :) 我将选择这个作为答案。它几乎有解决方案。