在列表小部件 Qt C++中显示数组内容
Display array content in a List Widget Qt C++
我想使用 Qt 和 C++ 在列表小部件(基于项目)中显示我的数组的一些内容,我试过这个,但它确实有效:
QString exemple[2] = 'blablabla'
ui->listWidgetResult->addItem(exemple[2].toStdString().c_str());
谢谢!
这
行不通:
QString example[2] = 'blablabla'
首先,'
用于char
值,而不是字符串。其次,您声明了一个包含两个 QString 的数组,但将其分配给 C 字符串。你的意思可能是这样的:
QString example[2] = {"blabla", "blabla"};
您实际上可以缩写为:
QString example[] = {"blabla", "blabla"};
要将数组的每个字符串添加到列表小部件中,您需要单独添加每个字符串。此外,无需转换为 C 字符串。QListWidget::addItem() takes QStrings:
for (int i = 0; i < sizeof(example); ++i) {
ui->listWidgetResult->addItem(exemple[i]);
}
或者,如果您有支持 C++-11 的最新编译器:
for (const auto& str : example) {
ui->listWidgetResult->addItem(str);
}
最后,与其使用普通数组来保存你的 QStrings,不如考虑将它们保存在 QStringList 中。然后,您可以使用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::Selection(QListWidgestItem * item)
{
for(int i = 0; i < item_count; i++)
{
if(ui -> listWidget -> item(i) == item)
{
str = ui -> listWidget -> item(i) -> text();
}
}
}
相关文章:
- 显示数组中的学生 ID 和最高分
- 我编写了一个程序来显示数组的内容,但它显示的是它的地址
- 为什么断点显示数组的第二个值是一个大数字?额外学分工作
- 使用指针显示数组的值
- 我无法显示包含整数最大值的索引. 但我可以显示数组中整数的最高值
- 数组:如何在指定索引之前显示数组的第一个和最后一个元素以及数组元素的差异?
- 使用增量/减少操作员在C 中显示数组的奇怪结果
- 将25个甚至整数存储到一个名为intlist的整数阵列中,然后在屏幕上显示数组,并在屏幕上显示名为fivintegers
- 显示数组的问题.一切都放在一个单独的行中,但不放入单独的列中
- strlen 显示数组元素的数量错误
- 我的函数不会用" "替换".",也不会按预期显示数组
- 以C++为单位乘以并显示数组的值
- 找不到标识符,尝试在 C++ 中显示数组值
- 如何显示数组名称中的名称
- 在列表小部件 Qt C++中显示数组内容
- c++将.txt文件中的字符串添加到字符串数组中,并显示数组的值
- C++如何将数组传递给函数,然后调用它来显示数组的值
- 从函数更新(覆盖)和显示数组
- 在单独的数据中显示数组数据
- 仅显示数组文本文件中的第一个字母