我有一个QDialog
显示QTreeWidget
,其中包含某些对象的参数。
我添加了一个按钮,可以在视觉上像这样在对象的向量中添加额外的字段。
void on_Create_Surface_Pressed()
{
QPushButton * const button = qobject_cast<QPushButton*>(sender());
QTreeWidgetItem* branch = treeButtons[button];
if(branch)
{
QTreeWidgetItem* leaf = new QTreeWidgetItem(branch);
QString str("Point ");
str+=QString::number(branch->childCount()-1);
QLabel* label = new QLabel(str);
QString surfType[3] = {QString("x") , QString("y") ,QString("z")};
QTableWidget* surfTable = sampleTree( surfType);<--(Create and add a
Table under the
qtreewidgetItem)
leaf->treeWidget()->setItemWidget(leaf , 0 , label);
leaf->treeWidget()->setItemWidget(leaf , 1 , surfTable);
update();
}
}
我的问题是新行会在下一个QTreeWidgetItem
之上呈现,直到用户折叠树(这是我正在使用的噱头)。
有解决方法吗?或者不是QTreeWidget
用于此用途,而QTreeView
会更好用吗?