在列表小部件Qt C++; 我想在QIT和C++中的列表控件(基于项目的)中显示我的数组的一些内容,我试过了,但是它的工作量很大: QString exemple[2] = 'blablabla' ui->listWidgetResult->addItem(exemple[2].toStdString().c_str());
谢谢 这不起作用:在列表小部件Qt C++; 我想在QIT和C++中的列表控件(基于项目的)中显示我的数组的一些内容,我试过了,但是它的工作量很大: QString exemple[2] = 'blablabla' ui->listWidgetResult->addItem(exemple[2].toStdString().c_str());,c++,arrays,qt,qstring,C++,Arrays,Qt,Qstring,谢谢 这不起作用: QString example[2] = 'blablabla' 首先,”用于char值,而不是字符串。其次,您要声明一个由两个qString组成的数组,但要将其分配给一个C字符串。你的意思可能是: QString example[2] = {"blabla", "blabla"}; 您可以将其缩写为: QString example[] = {"blabla", "blabla"}; 要将数组的每个字符串添加到列表小部件中,需要单独添加每个字符串。此外,不需要转换为C
QString example[2] = 'blablabla'
首先,”
用于char
值,而不是字符串。其次,您要声明一个由两个qString组成的数组,但要将其分配给一个C字符串。你的意思可能是:
QString example[2] = {"blabla", "blabla"};
您可以将其缩写为:
QString example[] = {"blabla", "blabla"};
要将数组的每个字符串添加到列表小部件中,需要单独添加每个字符串。此外,不需要转换为C字符串。QListWidget::addItem()接受QString:
for (int i = 0; i < sizeof(example); ++i) {
ui->listWidgetResult->addItem(exemple[i]);
}
最后,代替使用普通数组来保存QQuxy,而是应该考虑将它们保存在QSTRIGLIST中。然后,您只需使用
addItems()
传递整个QStringList,我认为这应该是一个简单的解决方案,可以满足您的要求
void MyClass::Set_List(QList<QString> filesList, int item_count)
{
QVector<QString> load_set(item_count);
for(int i = 0; i < item_count; i++)
{
load_set[i] = filesList[i];
ui -> listWidget -> addItem(load_set[i]);
}
}
void MyClass::Set_List(QList filesList,int item_count)
{
QVector载荷集(项目计数);
对于(int i=0;i- listWidget->addItem(加载集合[i]);
}
}
然后把信息拿回来
void MyClass::Selection(QListWidgestItem * item)
{
for(int i = 0; i < item_count; i++)
{
if(ui -> listWidget -> item(i) == item)
{
str = ui -> listWidget -> item(i) -> text();
}
}
}
void MyClass::Selection(QListWidgetItem*item)
{
对于(int i=0;i- listWidget->item(i)=item)
{
str=ui->listWidget->item(i)->text();
}
}
}
void MyClass::Selection(QListWidgestItem * item)
{
for(int i = 0; i < item_count; i++)
{
if(ui -> listWidget -> item(i) == item)
{
str = ui -> listWidget -> item(i) -> text();
}
}
}