如何将复杂的指针数据作为属性放入qt-plugin-xml文件中
How can I put complex pointer data as property into qt plugin xml file
我在Qt中实现了一个小部件,如下所示:
class MyWidget : public QWidget
{
Q_OBJECT
Q_PROPERTY( bool BooVal READ getBoolVal WRITE setBoolVal)
Q_PROPERTY( MyPointer* PointerData READ getPointer WRITE setPointer);
...
}
我想在QtDesinger中使用它。因此,我实现了QDesignerCustomWidgetInterface接口,如下所示:
class MyPlugin : public QObject, public QDesignerCustomWidgetInterface
{
...
}
QWidget *MyPlugin::createWidget( QWidget *parent )
{
return new MyWidget(parent);
}
但在QtDesigner属性窗口中,我无法设置像Q_property(MyPointer*PointerData…)这样的复杂数据。一些Qt小部件,如QTreeWidget,可以通过自定义界面在QtDDesigner中设置复杂的指针数据。例如,在QTreeWidget中,当我设置父节点及其子节点时,.ui文件中会出现以下内容
<widget class="QTreeWidget" name="treeWidget">
<item>
<property name="text">
<string>1</string>
</property>
<item>
<property name="text">
<string>1-1</string>
</property>
</item>
</item>
</widget>
事实上,我想创建一个像QTreeWidget这样的插件,并通过QtDesinger设置复杂的数据,比如QTreeWidgetItem*。
是否以UI xml形式保存QTreeWidget的子类?你可以使用
void QAbstractFormBuilder::save(QIODevice * device, QWidget * widget)
void QAbstractFormBuilder类或QFormBuilder类的函数。
相关文章:
- Qt 写入 xml: QIODevice::write (QFile, "D:/logs.xml" ): 设备未打开
- 使用提升属性树检查 xml 文件中是否存在元素
- 如何在Qt中解析未知的xml并获取其中的所有属性
- Qt C++下载XML文件并在textEdit中显示
- 使用 qt c++ 检查 Xml 中是否存在根元素
- Qt - 通过 xml 配置接口
- 使用QT的C 处理DOM处理后的XML属性顺序
- 通过Qt读取xml
- 使用 c++ 和 Qt 解析 xml 文件
- 在用Qt编写XML文件时对其进行解析
- 使用 Qt 搜索具有特殊父级的 XML 属性
- 如何将复杂的指针数据作为属性放入qt-plugin-xml文件中
- 移动具有属性 Qt::CustomizeWindowHint; 的 QT 表单
- 如何使用 c++ 和 Qt 管理 XML 配方
- 使用 QT 进行 XML 解析
- QT:读取xml文件并使用DOM解析器对其进行解析
- 如何用qt解析xml
- 如何从Qt导出XML
- Qt C++XML意外字符
- url属性的快速xml解析错误