【发布时间】:2013-01-27 12:04:03
【问题描述】:
我正在尝试使用 QTreeWidgetItem 创建一个子树。 这是代码
m_pRoot = new QTreeWidgetItem(treeWidget);
m_pRoot->setText(0, "root");
m_pRoot->setData(0, Qt::UserRole, IT_ROOT);
createTreeItem(m_pRoot, m_pText, "subtree_1", IT_TEXT);
m_pRoot->setExpanded(true);
createTreeItem(m_pText, m_pPlainText, "subtree_2", IT_TEXT);
这就是方法:
void createTreeItem(PTR(QTreeWidgetItem) parent, PTR(QTreeWidgetItem) item, CREF(QString) name, ItemType itemType)
{
item = new QTreeWidgetItem(parent);
item->setText(0, name);
item->setData(0, Qt::UserRole, QVariant(itemType));
}
当我用 m_pRoot 作为根项目创建“subtree_1”时没问题,但是当我想用 m_pText 作为根项目创建“subtree_2”时它会崩溃。
P.S PTR() 等于 *parent。
无法理解问题所在。有什么建议吗?
【问题讨论】:
标签: qt qtreewidget qtreewidgetitem