我正在学习 QT 并试图QStringList
用几个元素填充 a,这些元素后来填充 aQListView
我从文档中的第一次尝试是:
// Create model
model = new QStringListModel(this);
// Make data
List << "Java" << "C++" << "C";
// Populate our model
model->setStringList(List);
// Glue model and view together
ui->listView->setModel(model);
到目前为止一切顺利......我可以看到我的列表以及我填充的所有元素......
现在在同一个类中,我正在尝试定义一个函数,让我将新元素添加到列表中......
所以我的第一个想法是定义类似
void MainWindow::addNewLanguage(QString& item)
{
List << item;
model->setStringList(List);
}
但是(我的问题来了……)我只能通过做来调用我的函数
QString x( "Php" );
w1.addNewLanguage( x );
我想改用更漂亮的东西,比如:
w1.addNewLanguage( "Pascal" );
无需定义 QString 的新对象...
但这样做会破坏与味精的编译
C:\Users\xxx\WorspaceQT\untitled4\main.cpp:25:错误:从“QString”类型的右值 w1.addNewLanguage(“x2”) 的“QString&”类型的非常量引用的初始化无效;^
我能做些什么来解决这个问题??
谢谢!:)