我的自定义小部件未显示在 Qt Creator / Qt Designer 中,但在我执行程序时会显示
My custom widget is not shown in Qt Creator / Qt Designer but it is shown when I execute the program
我想要一个 QTabWidget
带有包含自定义小部件的选项卡。
我创建了一个自定义小部件(由 .ui、.h 和 .cpp 文件组成)
我在我的QTabWidget
首页添加了这个自定义Widget,但是这个Widget的内容在QtCreator的设计器中没有显示。
我将我的自定义小部件提升为 Tab1Custom
。
此设置在我 运行 程序时按预期编译和工作,但我的自定义控件未显示在 QtCreator 的设计器中。
如何使我的自定义控件显示在 QtCreator 的设计器中?
这是 MainWindow.ui 的第一部分:
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
<class>MainWindow</class>
<widget class="QMainWindow" name="MainWindow">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>800</width>
<height>600</height>
</rect>
</property>
<property name="windowTitle">
<string>my title </string>
</property>
<widget class="QWidget" name="centralWidget">
<widget class="QTabWidget" name="tabWidget">
<property name="geometry">
<rect>
<x>0</x>
<y>10</y>
<width>801</width>
<height>551</height>
</rect>
</property>
<property name="currentIndex">
<number>0</number>
</property>
<widget class="Tab1Custom" name="myTab1">
<attribute name="title">
<string>My Tab number 1</string>
</attribute>
</widget>
....
这就是您使用自定义小部件并对其进行推广时的工作原理。为了让您的小部件绘制内容,您必须创建一个 DLL 来扩展 Qt Designer。查看 "Creating Custom Widgets for Qt Designer" 了解更多信息。
在大多数情况下,我认为不值得为此付出努力;一般来说,它只显示一个空白小部件或您提升的任何基本小部件都很好。
我想要一个 QTabWidget
带有包含自定义小部件的选项卡。
我创建了一个自定义小部件(由 .ui、.h 和 .cpp 文件组成)
我在我的
QTabWidget
首页添加了这个自定义Widget,但是这个Widget的内容在QtCreator的设计器中没有显示。我将我的自定义小部件提升为
Tab1Custom
。
此设置在我 运行 程序时按预期编译和工作,但我的自定义控件未显示在 QtCreator 的设计器中。
如何使我的自定义控件显示在 QtCreator 的设计器中?
这是 MainWindow.ui 的第一部分:
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
<class>MainWindow</class>
<widget class="QMainWindow" name="MainWindow">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>800</width>
<height>600</height>
</rect>
</property>
<property name="windowTitle">
<string>my title </string>
</property>
<widget class="QWidget" name="centralWidget">
<widget class="QTabWidget" name="tabWidget">
<property name="geometry">
<rect>
<x>0</x>
<y>10</y>
<width>801</width>
<height>551</height>
</rect>
</property>
<property name="currentIndex">
<number>0</number>
</property>
<widget class="Tab1Custom" name="myTab1">
<attribute name="title">
<string>My Tab number 1</string>
</attribute>
</widget>
....
这就是您使用自定义小部件并对其进行推广时的工作原理。为了让您的小部件绘制内容,您必须创建一个 DLL 来扩展 Qt Designer。查看 "Creating Custom Widgets for Qt Designer" 了解更多信息。
在大多数情况下,我认为不值得为此付出努力;一般来说,它只显示一个空白小部件或您提升的任何基本小部件都很好。