Qt学习笔记(四)属性表

Qt中并没有属性表组件这一模块,只能通过运用其他人封装好的。

下面为下载链接,只需要往工程中添加所有的文件,即可使用

https://gitee.com/ggggy/qt-ShuXingBiao.git

下面为常见的用法:

在Qt Create中将widget组件提升为QtTreePropertyBrowser即可使用

或者 QtTreePropertyBrowser *widget;  widget = new QtTreePropertyBrowser(tab);

创建一个mangager和工厂

QtVariantPropertyManager*m_pVarManager1;
QtVariantEditorFactory*m_pVarFactory;

m_pVarManager1 = new QtVariantPropertyManager(ui->widget);

m_pVarFactory = new QtVariantEditorFactory(ui->widget);
ui->widget->setFactoryForManager(m_pVarManager1,m_pVarFactory);

1.只添加一条属性

	QtVariantProperty *temp00m = m_pVarManager->addProperty(QVariant::Double, QString::fromLocal8Bit("[%1]").arg(0));
	temp00m->setValue(1);
	itemm->addSubProperty(temp00m);
2.添加一组属性

QtProperty *groupItem1 = m_pVarManager1->addProperty(QVariant::Bool, QString::fromLocal8Bit("坐标:"));
	for (int i = 0; i < size; i++)
	{
		QtVariantProperty *temp = m_pVarManager->addProperty(QVariant::Int, QString::fromLocal8Bit("[%1]").arg(i));
		temp->setValue(center[i].x);
		groupItem1->addSubProperty(temp);
	}
3.可修改属性内容

ui->widget->setFactoryForManager(m_pVarManager1,m_pVarFactory);//将一个工厂与manger关联起来,即可修改内容。

4.数据类型

QVariant::Int为整型

QVariant::Bool 布尔型

QVariant::Double 浮点型
QVariant::String 字符串


你可能感兴趣的:(qt)