属性页控件,在界面软件项目中应用很广,qt很早之前开发过一个属性页控件qtpropertybrowser,但很久没有更新功能,也没有默认添加到用户新建项目中,需要手动复制引用这个库到自己项目中。另外介于官方的很久没有更新功能,第三方开发了功能更强大的属性页控件QtnProperty,github: https://github.com/qtinuum/QtnProperty。下面讲解qtpropertybrowser的使用。
-
查找qt自带的qtpropertybrowser库文件,我安装的是Qt5.12.9, 目录: D:\Qt\Qt5.12.9, 库文件目录为:
D:\Qt\Qt5.12.9\5.12.9\Src\qttools\src\shared\qtpropertybrowser
直接复制到自己新建项目中。
-
在界面中建立新 widget 提升为QtTreePropertyBrowser。
-
编写代码。
test.h
#include "../tm-qtpropertybrowser/qtvariantproperty.h" QtVariantPropertyManager* _pModelAttrmgr; QtVariantEditorFactory* _pModelEditFactory;
test.cpp
// 测试PropertyBrowser // ui->_proWidget 类型 QtTreePropertyBrowser _pModelAttrmgr = new QtVariantPropertyManager(ui->_proWidget); _pModelEditFactory = new QtVariantEditorFactory(ui->_proWidget); ui->_proWidget->setFactoryForManager(_pModelAttrmgr, _pModelEditFactory); QtVariantProperty* prop = _pModelAttrmgr->addProperty(QVariant::RectF, "Pos"); ui->_proWidget->clear(); ui->_proWidget->addProperty(prop);
-
运行结果。