qt 属性控件 使用qt提供的源码 qtpropertybrowser(D:\Qt\5.15.2\Src\qttools\src\shared\qtpropertybrowser)在这个目录下

效果:

 

 

 直接将头文件h和源文件cpp文件添加到项目中。

cmakeLists.txt:

file(GLOB qtpropertybrowser ${QTPROPERTYBROWSER_DIR}/*.cpp ${QTPROPERTYBROWSER_DIR}/*.h)

include_directories("${QTPROPERTYBROWSER_DIR}")

设置了源文件路径

 

只有一个cpp文件:

#include "ParameterWidget.h"
#include "qttreepropertybrowser.h"
#include "qtvariantproperty.h"
#include <QVBoxLayout>


ParameterWidget::ParameterWidget(QWidget *parent)
    :QWidget(parent)
{
    QVBoxLayout * vlayout = new QVBoxLayout;
    this->setLayout(vlayout);

    QtTreePropertyBrowser* treepropertybrowser = new QtTreePropertyBrowser;

    QtVariantPropertyManager *m_pVarManager = new QtVariantPropertyManager(treepropertybrowser);
    QtVariantProperty *item = m_pVarManager->addProperty(QVariant::Int, QStringLiteral("整形数据:"));
    item->setValue(101);
    treepropertybrowser->addProperty(item);
    item =m_pVarManager->addProperty(QVariant::Bool, QStringLiteral("布尔型数据:"));
    item->setValue(true);
    treepropertybrowser->addProperty(item);
    item =m_pVarManager->addProperty(QVariant::Double, QStringLiteral("浮点数据:"));
    item->setValue(3.1415926);
    treepropertybrowser->addProperty(item);
    item =m_pVarManager->addProperty(QVariant::String, QStringLiteral("字符串数据:"));
    treepropertybrowser->addProperty(item);
    item->setValue(QStringLiteral("尘中远"));

    vlayout->addWidget(treepropertybrowser);

}

ParameterWidget::~ParameterWidget()
{

}

 



posted @ 2024-05-06 19:49  雾枫  阅读(132)  评论(0编辑  收藏  举报