- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
这是我的第一个 QT 问题 - 我通常是一名 C# 程序员,所以请原谅我问了一个愚蠢的问题,我确信这个问题有一个非常简单的答案,但我似乎找不到:
我想将项目添加到列表中,暂时假设它们是字符串。我有一个 QListView:UI->listView
、一个 QStringList 和一个 QStringListModel:
stringList = new QStringList();
stringList->append("ABC");
stringList->append("123");
listModel = new QStringListModel(*stringList, NULL);
ui->listView->setModel(listModel);
stringList->append("xyz");
此示例在我的列表中编译并显示“ABC”和“123”,但不显示“xyz”。为什么不?我需要以某种方式重新绘制 listView 吗?我对 NULL 做错了什么吗?
谢谢。
最佳答案
如果您经常需要修改字符串列表并且有需要更新的连接 View ,您可以考虑首先取消 QStringList 并单独使用 QStringListModel。您可以使用 insertRows/removeRows 和 setData 在那里添加/删除数据。这确保 View 始终以您期望的方式反射(reflect)模型。这可以包装起来以防止繁琐的工作。像(未经测试):
class StringList : public QStringListModel
{
public:
void append (const QString& string){
insertRows(rowCount(), 1);
setData(index(rowCount()-1), string);
}
StringList& operator<<(const QString& string){
append(string);
return *this;
}
};
关于c++ - QListView中的QT4 QstringListModel,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5802313/
这是我的第一个 QT 问题 - 我通常是一名 C# 程序员,所以请原谅我问了一个愚蠢的问题,我确信这个问题有一个非常简单的答案,但我似乎找不到: 我想将项目添加到列表中,暂时假设它们是字符串。我有一个
我有以下代码: QStringListModel* m=new QStringListModel(gc.get_lista_file()); ui->lista_immagini_listView->
这个问题在这里已经有了答案: Why not non-const reference to temporary objects? [duplicate] (4 个答案) 关闭 5 年前。 我正在学习
我需要在 'void MainWindow::on_pbImprime_clicked()' 中将 QStringListModel 的内容打印到打印机,它可以毫无问题地打印任何 Qstring,但我
我有 QStringListModel QStringListModel* blocksModel = new QStringListModel(); 还有一个继承自QObject的类 class B
我有 QListView *myListView; QStringList *myStringList; QStringListModel *myListModel; 我用这样的数据填充: myStr
我有一个工作正常的 QStringListModel,但是我需要从它从 QML 中删除所有行。 我希望 Qt 文档中的 removeRowsfunction 能像那样工作,但我不知道如何使用它的属性。
我有一个 QListview,我用它来显示书名,使用 QStringListModel 作为模型。如何删除当前选中的项目?我想只能删除一本应该是当前所选书名的书名。我通读了几个类似的问题,但没有在任何
是否可以使用 QStringListModel 向 ListView 添加图标? 这就是我正在做的。 QStringListModel* model; QStringList List; model-
这里是 Qt 菜鸟!我试图创建一个迭代器来查找给定文件夹中的所有 .txt 文件,将其添加到 QStringList 并将其传递给 QListView。但是当我声明一个新的 QStringListMo
我想开始制作我自己的 Qt ListView 模型,我想我会先在我自己的 QAbstractItemModel 中包装一个 QStringListModel,然后渲染它在 ListView 中。但是,
我在我的应用程序中使用 QListView 小部件,并将 QStringListModel 作为模型。完整代码如下: main.cpp #include "mainwindow.h" #include
抱歉这个菜鸟问题。我浏览了文档并创建了我自己的 QStringListModel。我需要做的是将 QStringList 的所有条目分配为我的模型的条目(因此将我的模型的私有(private)成员设置
我编写了这个小型测试程序,以便更好地了解QT的Signals&Slots和Multithreading。 主窗口 #ifndef MAINWINDOW_H #define MAINWINDOW_H #
我是一名优秀的程序员,十分优秀!