Если вам часто нужно изменить список строк и иметь связанные представления, которые необходимо обновить, вы можете в первую очередь покончить с QStringList и использовать только QStringListModel. Вы можете добавлять / удалять данные, используя insertRows / removeRows и setData. Это гарантирует, что представления всегда отражают модель так, как вы ожидаете. Это можно обернуть, чтобы избежать утомительной работы. Что-то вроде (не проверено):
ой первый вопрос 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?
Благодарю.