是的,QTreeWidget是一个QWidget派生类,可以直接显示在QWidget中。例如:
#include <QApplication>
#include <QVBoxLayout>
#include <QTreeWidget>
#include "ManageTreeXml.h"
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
QWidget* pMainWnd = new QWidget();
QVBoxLayout* pLayout = new QVBoxLayout(pMainWnd);
QTreeWidget* pTree = new QTreeWidget();
ManageTreeXml::LoadTreeXml(pTree, "data.xml");
pLayout->addWidget(pTree);
pMainWnd->setLayout(pLayout);
pMainWnd->show();
return a.exec();
}
这段代码创建了一个QWidget窗口,包含一个QVBoxLayout布局和一个QTreeWidget。并通过ManageTreeXml类加载XML数据到QTreeWidget中,最后将QTreeWidget添加到QVBoxLayout布局中,并将该布局设置为QWidget的主布局,从而使得QTreeWidget显示在QWidget中。