我认为这不是一个关于特别是Qt的问题,而是一个缺乏编程经验的问题。返回派生的QTreeWidgetItem
我从QTreeWidgetItem派生了一个类,并添加了一些布尔标志。当我初始化QTreeWidget我添加由他们俩
_NewItem1=MyQTreeWidgetItem(_treewidget);
比后来我通过
_NewItem1_1=MyQTreeWidgetItem(_NewItem1);
_NewItem1_1->boleanvalue1=true;
新增一些项目,如果我以后要回这些物品我打电话
(MyQTreeWidgetItem)_NewItem1->child(i)
但这当然只是返回一个带有新初始化的布尔标志的MyQTreeWidgetItem。
我是否必须重写子函数以重新调用我之前初始化的真实项目?
如果您将创建的元素添加到窗口小部件,并且要求窗口小部件让您的孩子使用索引i,那么您当然会获得与之前放置的相同的对象。孩子们被存储在一个集合中,通常是指针的集合。你的演员顺便说一句,应该是'(MyQTreeWidgetItem *)parent-> child(i)' – dowhilefor