C++ QListWidget显示两列
时间: 2023-07-11 07:14:47 浏览: 526
QListWidget 不显示自定义widget 控件 问题解决
要在 QListWidget 中显示两列,你可以使用 QListWidgetItem 的 setFlags() 方法来设置 QListWidgetItem 可以包含多个列。然后,使用 QListWidgetItem 的 setText() 方法来设置每个列的文本内容。
例如,以下代码将在 QListWidget 中显示两列,第一列显示项目名称,第二列显示项目描述:
```cpp
QListWidget* myListWidget = new QListWidget(this);
myListWidget->setViewMode(QListWidget::IconMode);
myListWidget->setIconSize(QSize(100, 100));
myListWidget->setResizeMode(QListWidget::Adjust);
// 添加 QListWidgetItem
QListWidgetItem* item1 = new QListWidgetItem();
item1->setFlags(item1->flags() | Qt::ItemIsEditable);
item1->setText("项目1");
item1->setToolTip("这是项目1的描述");
myListWidget->addItem(item1);
QListWidgetItem* item2 = new QListWidgetItem();
item2->setFlags(item2->flags() | Qt::ItemIsEditable);
item2->setText("项目2");
item2->setToolTip("这是项目2的描述");
myListWidget->addItem(item2);
// 设置 QListWidgetItem 的列数和列宽
myListWidget->setColumnCount(2);
myListWidget->setColumnWidth(0, 120);
myListWidget->setColumnWidth(1, 200);
```
注意,如果你想在 QListWidget 中显示更多的列,你需要在 QListWidgetItem 的 setFlags() 方法中设置更多的标志位。同时,你还需要设置 QListWidget 的列数和每一列的宽度。
阅读全文