Qt Creator Designer 中的 QDockWidget 表单
QDockWidget form in Qt Creator Designer
我正在使用 Qt Creator 4.5.0 并正在尝试创建一个我可以在内置设计器中修改的 QDockWidget(我一直在使用 QDialogs 和 QMainWindows 这样做,所以这是第一次尝试使用QDock 控件)。但是我无法将任何类型的任何小部件元素添加到 QDockWidget。
这是我采取的步骤
- 在左侧的项目树中,右键单击项目,然后 select "Add New..."
- 在左边弹出的select"Qt"里window,然后select"Qt Designer Form Class",然后select"Choose"
- 在此页面上展开 "Widgets" 部分,然后 select "QDockWidget",然后 select "Next"
- 在此页面上为 class 命名(对我来说是 "ImageFilesDockWidget"),然后单击 "Next"
- 在此页面上 select "Finish" 将文件添加到项目中。
- 从这里开始,"ImageFilesDockWidget.ui" 文件将自动显示,所以我尝试向视图添加一些小部件,但什么也没有添加。例如,如果我单击一个按钮并将其拖到 dockwidget 的中心,它会显示一个红色圆圈,中间有一条线穿过它,表示我无法添加该项目。
如果有人 运行 解决了这个问题并且知道如何解决这个问题,那对我来说将是一个巨大的帮助。
提前致谢。
更新
目前我可以使用设计器自定义标准 QWidget 对象(称之为 "ImageFilesWidget.ui")。所以目前我的解决方案是在设计器中将标准 QDockWidget 添加到我的 QMainWindow,然后(仍在设计器中)我将 dockWidgetContents 从标准 QWidget 提升到我的 ImageFilesWidget class.
问题似乎是当 qtcreator 4.5 为您创建 dockwidgets ui 文件时,它不包含以前版本中包含的 "dockWidgetContents" 小部件。只需手动将 <widget class="QWidget" name="dockWidgetContents"/>
放在 dockwidget 的 "windowTitle" 属性 下,您就可以向其中添加 ui 元素。
我正在使用 Qt Creator 4.5.0 并正在尝试创建一个我可以在内置设计器中修改的 QDockWidget(我一直在使用 QDialogs 和 QMainWindows 这样做,所以这是第一次尝试使用QDock 控件)。但是我无法将任何类型的任何小部件元素添加到 QDockWidget。
这是我采取的步骤
- 在左侧的项目树中,右键单击项目,然后 select "Add New..."
- 在左边弹出的select"Qt"里window,然后select"Qt Designer Form Class",然后select"Choose"
- 在此页面上展开 "Widgets" 部分,然后 select "QDockWidget",然后 select "Next"
- 在此页面上为 class 命名(对我来说是 "ImageFilesDockWidget"),然后单击 "Next"
- 在此页面上 select "Finish" 将文件添加到项目中。
- 从这里开始,"ImageFilesDockWidget.ui" 文件将自动显示,所以我尝试向视图添加一些小部件,但什么也没有添加。例如,如果我单击一个按钮并将其拖到 dockwidget 的中心,它会显示一个红色圆圈,中间有一条线穿过它,表示我无法添加该项目。
如果有人 运行 解决了这个问题并且知道如何解决这个问题,那对我来说将是一个巨大的帮助。
提前致谢。
更新
目前我可以使用设计器自定义标准 QWidget 对象(称之为 "ImageFilesWidget.ui")。所以目前我的解决方案是在设计器中将标准 QDockWidget 添加到我的 QMainWindow,然后(仍在设计器中)我将 dockWidgetContents 从标准 QWidget 提升到我的 ImageFilesWidget class.
问题似乎是当 qtcreator 4.5 为您创建 dockwidgets ui 文件时,它不包含以前版本中包含的 "dockWidgetContents" 小部件。只需手动将 <widget class="QWidget" name="dockWidgetContents"/>
放在 dockwidget 的 "windowTitle" 属性 下,您就可以向其中添加 ui 元素。