Qt之QListWidget学习
时间: 2018-09-14来源:OSCHINA
前景提要
「深度学习福利」大神带你进阶工程师,立即查看>>>
参考:
https://blog.csdn.net/xuancailinggan/article/details/77487780
1、创建一个QtGUI应用,基类选择QWidget
2、初始化 listWidget = new QListWidget(this);
this->setGeometry(100,100,200,200); listWidget = new QListWidget(this); listWidget->setGeometry(50,50,100,100); //设置位置

2、尾部追加
1.1、方法1 //QListWidget追加数据方法1:少量追加 listWidget->addItem(new QListWidgetItem(QIcon(":/resourece/qtblog.png"), tr("第0行")));

1.2、方法2 QListWidgetItem *item = new QListWidgetItem; item->setText(tr("第0行")); item->setIcon(QIcon(":/resourece/qtblog.png")); listWidget->addItem(item);

1.3、方法3 new QListWidgetItem(QIcon(":/resourece/qtblog.png"), tr("第0行"), listWidget);

2.1、批量追加 //QListWidget追加数据方法2:批量追加 QStringList strList; strList << QString("第2行") << QString("第3行") << QString("第4行"); listWidget->addItems(strList);

2.2、建立一个继承自QListWidget的窗口,构造函数: Widget::Widget(QWidget *parent) : QListWidget(parent) { QStringList strList{tr("项目0"), tr("项目1"), tr("项目2"), tr("项目3")}; this->addItems(strList); }
//QListWidget追加数据方法1:少量追加 QListWidgetItem *item = new QListWidgetItem; item->setText("方法1"); listWidget->addItem(item); //QListWidget追加数据方法2:批量追加 QStringList strList; strList << QString("第2行") << QString("第3行") << QString("第4行"); listWidget->addItems(strList); //任意位置插入:因为item指向同一块内存,所以修改了原来的0行内容 item->setText("插入0"); listWidget->insertItem(0, item);
//QListWidget追加数据方法1:少量追加 QListWidgetItem *item = new QListWidgetItem; item->setText("方法1"); listWidget->addItem(item); //QListWidget追加数据方法2:批量追加 QStringList strList; strList << QString("第2行") << QString("第3行") << QString("第4行"); listWidget->addItems(strList); //任意位置插入:覆盖插入 QListWidgetItem *item1 = new QListWidgetItem; item1->setText("插入0"); listWidget->insertItem(0, item1);

addItems()和insertItem()的区别在于前者在末尾追加数据,后者可以在任意位置插入数据。
3、添加图标 item->setIcon(QIcon(":/resourece/qtblog.png"));

4、多选模式:[默认单选SingleSelection] listWidget->setSelectionMode(QAbstractItemView::ExtendedSelection);

5、图标显示
前面的列表是小图标显示,我们也可以更改为图标显示 listWidget->setViewMode(QListView::IconMode); //图标显示 listWidget->setIconSize(QSize(200, 200)); listWidget->setResizeMode(QListWidget::Adjust); new QListWidgetItem(QIcon(":/resourece/rectangle.png"), tr("第0行"), listWidget); new QListWidgetItem(QIcon(":/resourece/circle.png"), tr("第1行"), listWidget);

科技资讯:

科技学院:

科技百科:

科技书籍:

网站大全:

软件大全:

热门排行