如何添加一个自定义小部件到Qt 4.8.6
问题描述:
我想弄清楚如何添加一个自定义小部件到Qt设计器。到目前为止,我一直没有成功。 Qt非常新。我正在运行Qt 4.8.6。我知道有一个更新的版本,但由于项目的限制,我必须坚持这一个。基本上我需要添加一个十六进制旋转框,即一个以十六进制数而非十进制数进行计数的旋转盒。我甚至找到了code that implements it。它确实解释了how to integrate it into Qt Designer,但它解释为版本3.有人可以提供帮助吗?如何添加一个自定义小部件到Qt 4.8.6
任何帮助是极大的赞赏
答
阅读creating designer widgets和using them,但简要地说:
- 子类
QDesignerCustomWidgetInterface
创建自定义设计器插件为您的自定义窗口小部件 - 建立和安装你的设计师插件
- 告诉设计师你的插件位置,或只是确保它安装到
$QTDIR/plugins/designer
还有an example需要关注。
答
要自定义小工具添加到Qt的设计师只需按照以下步骤:
- 在Qt Designer中创建一个新的Widget文件 - >新建 - >窗口小部件。
- 添加您的UI等,为这个小部件,并将其保存 - > - > MyWidget.ui
- 创建一个类“MyWidgetHandler”在MyWidgetHandler.h来处理这个小部件& CPP
-
在你的主窗口/对话框哪里你想显示这个小部件,从设计器的“容器”部分添加一个“小部件”。
现在右键单击您刚才添加的“微件”容器,然后单击“升级为...”
- 这将打开一个对话框。你可以在这里选择基类继承你的情况下的属性QComboBox或者只选择QWidget类。
- 接下来输入完整的类名,即命名空间例如:“blah :: MyWidgetHandler”
- 在Header文件部分,只需将该路径添加到该类的头文件即可。这应该是可以解决的路径。如:“UI/MyWidgetHandler.h”或“C:/UI/MyWidgetHandler.h”
- 现在点击“升级”并保存MainWindow.ui
- 属性编辑器现在应该显示您的自定义类的类型如:胡说:: MyWidgetHandler。以及您选择的基类中的属性。
- 不要忘记在处理程序类中设置UI,并在主窗口处理程序中包含标题。
干杯!
这是所有记录,并在Qt 4附带的文档中有示例。 –