如何替换Q3ListView / Q3ListViewItem实用程序?

时间:2012-10-02 14:26:21

标签: qt4 qlistview qt3

我正在更新一些旧代码,不幸的是,它严重依赖于Q3ListView和Q3ListViewItem,它现在已经过时的小助手类了。

我假设我现在可以在没有项目层的情况下填充QListView,但是在查看文档时,我仍然没有很好的掌握。我找到的一个教程用QStandardItems填充QStandardItemModel,然后将其设置为QListView的模型,但我也遇到了一个看起来很有趣的QAbstractListModel类。有几个问题出现了:

- QListView基本上是通过设置一些“模型”来填充的,它本身是用项填充的吗?

- 在我的旧版本中,Q3ListViewItem是这样的子类:

class OurListItem : public Q3ListViewItem {
   public: 
      OurListItem(Q3ListView* parent) :Q3ListViewItem(parent) {ourData = NULL;}
      OurListItem(Q3ListViewItem* parent) :Q3ListViewItem(parent) {ourData = NULL;}
      Data* ourData; 
}; 

考虑到现在可用的选项,重新实现这个想法的最佳方法是什么?

1 个答案:

答案 0 :(得分:1)

根据您希望转换的清洁程度以及转换的速度,您可能还需要查看QListWidgetQListWidgetItem。它们是Qt4中的近似类似物,我认为转换它们通常是直截了当的。我记得(已经有一段时间了),这些类的Qt3版本也可能有表或树的能力(而不仅仅是一个简单的列表),所以你可能也对QTableWidget和{{3感兴趣(及其相关的项目类)。