qcombobox 多列 c++代码
时间: 2023-07-24 16:06:37 浏览: 92
在 C++ 中,QComboBox 是一个用于选择单个选项的小部件。默认情况下,它只显示一个文本列。如果你想要在 QComboBox 中显示多列数据,你可以使用 QComboBox 的自定义模型。
下面是一个示例代码,演示如何在 QComboBox 中显示多列数据:
```cpp
#include <QApplication>
#include <QComboBox>
#include <QStandardItemModel>
int main(int argc, char *argv[])
{
QApplication app(argc, argv);
QComboBox comboBox;
QStandardItemModel model;
// 设置列数
model.setColumnCount(2);
// 添加数据
QList<QStandardItem*> row1;
row1 << new QStandardItem("Item 1") << new QStandardItem("Data 1");
model.appendRow(row1);
QList<QStandardItem*> row2;
row2 << new QStandardItem("Item 2") << new QStandardItem("Data 2");
model.appendRow(row2);
// 设置自定义模型
comboBox.setModel(&model);
// 设置显示的列
comboBox.setModelColumn(0); // 第一列
comboBox.show();
return app.exec();
}
```
在上面的示例中,我们使用了 QStandardItemModel 来创建一个自定义模型,并在模型中设置了两列数据。然后,我们将自定义模型设置为 QComboBox 的模型,并使用 setModelColumn() 方法来指定要在 QComboBox 中显示的列。
请注意,此代码只是一个简单示例,你可以根据自己的需求进行修改和扩展。希望对你有帮助!
阅读全文