本文介绍了如何将QStandardItemModel子类化以使用我自己的Item类型?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

如何子类化QStandardItemModel以使用我自己的商品类型(例如MyItem而不是QStandardItem)?我的意思是我知道我必须创建一个类并继承QStandardItemModel,但是接下来呢?如何在任何地方使用MyItem ?是的,MyItem是在QStandardItem之后继承的.

How do I subclass QStandardItemModel to use my own Item type (e.g. MyItem instead of QStandardItem)? I mean I know I have to create a class and inherit QStandardItemModel but what next? How do I make it use MyItem everywhere? And yes, MyItem inherits after QStandardItem.

推荐答案

我认为这是不可能的.您可以将QAbstractItemModel子类化以实现使用您的项目类的模型.

I think it is impossible. You can subclass QAbstractItemModel to implement a model that use your item class.

还可以使用默认的QStandardItemModel并使用QStandardItem::setData将其他对象添加到项目中.由于它接受QVariant,因此您可以在其中添加任何值,即事件QSharedPointer(您需要注册适当的元类型).

Also you can use default QStandardItemModel and add your additional object to items using QStandardItem::setData. Since it accepts QVariant, you can put any value in it, event QSharedPointer (you need to register appropriate meta type).

这篇关于如何将QStandardItemModel子类化以使用我自己的Item类型?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

10-11 02:10