我正在使用Qt Creator 4.5.0,并试图创建一个可以在内置设计器中修改的QDockWidget(我一直使用QDialogs和QMainWindows进行此操作,因此这是第一次尝试使用QDockWidget)。但是我对能够将任何类型的小部件元素添加到QDockWidget感到不走运。

这是我已采取的步骤

  • 在左侧的“项目”树中,右键单击该项目,然后选择“添加新...”。
  • 在弹出的窗口中,选择左侧的“Qt”,然后选择“Qt Designer表单类”,然后选择“选择”。
  • 在此页面上展开“窗口小部件”部分,然后选择“QDockWidget”,然后选择“下一步”。
  • 在此页面上为类(class)命名(对我来说是“ImageFilesDockWidget”),然后单击“下一步”。
  • 在此页面上,选择“完成”以将文件添加到项目中。
  • 从这里“ImageFilesDockWidget.ui”文件将自动显示,因此我尝试向 View 中添加一些小部件,但未添加任何内容。例如,如果我单击按钮并将其拖动到dockwidget的中心,则它会显示一个红色圆圈,并带有一条直线,表示我无法添加该项目。

  • 如果有人遇到了这个问题,并且知道如何解决这个问题,那对我来说将是巨大的帮助。

    提前致谢。

    更新

    目前,我可以使用设计器来自定义标准的QWidget对象(称为“ImageFilesWidget.ui”)。因此,目前我的解决方案是在设计器中将标准QDockWidget添加到我的QMainWindow中,然后(仍在设计器中)我将ockockWidgetContents从标准QWidget提升到ImageFilesWidget类。

    最佳答案

    似乎问题出在qtcreator 4.5为您创建dockwidgets ui文件时,它不包括早期版本中包含的“dockWidgetContents”窗​​口小部件。只需将<widget class="QWidget" name="dockWidgetContents"/>手动放入ockockwidget的“windowTitle”属性下,便可以向其中添加ui元素。

    关于qt - Qt Creator设计器中的QDockWidget表单,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/47914013/

    10-12 12:30
    查看更多