属性页控件,在界面软件项目中应用很广,qt很早之前开发过一个属性页控件qtpropertybrowser,但很久没有更新功能,也没有默认添加到用户新建项目中,需要手动复制引用这个库到自己项目中。另外介于官方的很久没有更新功能,第三方开发了功能更强大的属性页控件QtnProperty,github: https://github.com/qtinuum/QtnProperty。下面讲解qtpropertybrowser的使用。

  1. 查找qt自带的qtpropertybrowser库文件,我安装的是Qt5.12.9, 目录: D:\Qt\Qt5.12.9, 库文件目录为:
    D:\Qt\Qt5.12.9\5.12.9\Src\qttools\src\shared\qtpropertybrowser
    直接复制到自己新建项目中。
    在这里插入图片描述

  2. 在界面中建立新 widget 提升为QtTreePropertyBrowser。
    在这里插入图片描述

  3. 编写代码。

    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);
    
  4. 运行结果。
    在这里插入图片描述

Logo

开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!

更多推荐