首页 > 学院 > 开发设计 > 正文

QListWidget插入item方法

2019-11-08 03:15:27
字体:
来源:转载
供稿:网友

QListWidget可以显示一个清单,清单中的每个项目是QListWidgetItem的一个实例,每个项目可以通过QListWidgetItem来操作。可以通过QListWidgetItem来设置每个项目的图像与文字。下面说明3个例子,一个例子只显示文字,一个例子显示文字和图标,最后一个例子增加每个项的选择的信号。

例子1:

[cpp] view plain copyPRint?#include <Qapplication>  #include <QWidget>  #include <QVBoxLayout>  #include <QListWidget>  #include <QListWidgetItem>  int main(int argc, char** argv)  {      QApplication app(argc, argv);      QWidget* widget = new QWidget;      QListWidget* listWidget = new QListWidget;      QVBoxLayout* layout = new QVBoxLayout;      QListWidgetItem* lst1 = new QListWidgetItem("data", listWidget);      QListWidgetItem* lst2 = new QListWidgetItem("decision", listWidget);      QListWidgetItem* lst3 = new QListWidgetItem("document", listWidget);      QListWidgetItem* lst4 = new QListWidgetItem("process", listWidget);      QListWidgetItem* lst5 = new QListWidgetItem("printer", listWidget);      listWidget->insertItem(1, lst1);      listWidget->insertItem(2, lst2);      listWidget->insertItem(3, lst3);      listWidget->insertItem(4, lst4);      listWidget->insertItem(5, lst5);      listWidget->show();      layout->addWidget(listWidget);      widget->setLayout(layout);      widget->show();      app.exec();        }  

 

运行如下图:

 

 

 

 

第2个例子:

[cpp] view plain copyprint?#include <QApplication>  #include <QWidget>  #include <QVBoxLayout>  #include <QListWidget>  #include <QListWidgetItem>  int main(int argc, char** argv)  {      QApplication app(argc, argv);      QWidget* widget = new QWidget;      QListWidget* listWidget = new QListWidget;      QVBoxLayout* layout = new QVBoxLayout;      QListWidgetItem* lst1 = new QListWidgetItem(QIcon("images/data.png"), "data", listWidget);      QListWidgetItem* lst2 = new QListWidgetItem(QIcon("images/decision.png"), "decision", listWidget);      QListWidgetItem* lst3 = new QListWidgetItem(QIcon("images/document.png"), "document", listWidget);      QListWidgetItem* lst4 = new QListWidgetItem(QIcon("images/process.png"), "process", listWidget);      QListWidgetItem* lst5 = new QListWidgetItem(QIcon("images/printer.png"), "printer", listWidget);      listWidget->insertItem(1, lst1);      listWidget->insertItem(2, lst2);      listWidget->insertItem(3, lst3);      listWidget->insertItem(4, lst4);      listWidget->insertItem(5, lst5);      listWidget->show();      layout->addWidget(listWidget);      widget->setLayout(layout);      widget->show();      app.exec();        }  

 

运行如下图:

 

 

第3个例子:

 

[cpp] view plain copyprint?#include <QApplication>  #include <QWidget>  #include <QHBoxLayout>  #include <QListWidget>  #include <QListWidgetItem>  #include <QLabel>  int main(int argc, char** argv)  {      QApplication app(argc, argv);      QWidget* widget = new QWidget;      QListWidget* listWidget = new QListWidget;      QHBoxLayout* layout = new QHBoxLayout;      QLabel* label = new QLabel;      label->setFixedWidth(100);      QListWidgetItem* lst1 = new QListWidgetItem(QIcon("images/data.png"), "data", listWidget);      QListWidgetItem* lst2 = new QListWidgetItem(QIcon("images/decision.png"), "decision", listWidget);      QListWidgetItem* lst3 = new QListWidgetItem(QIcon("images/document.png"), "document", listWidget);      QListWidgetItem* lst4 = new QListWidgetItem(QIcon("images/process.png"), "process", listWidget);      QListWidgetItem* lst5 = new QListWidgetItem(QIcon("images/printer.png"), "printer", listWidget);      listWidget->insertItem(1, lst1);      listWidget->insertItem(2, lst2);      listWidget->insertItem(3, lst3);      listWidget->insertItem(4, lst4);      listWidget->insertItem(5, lst5);      QObject::connect(listWidget, SIGNAL(currentTextChanged(const QString &)), label, SLOT(setText(const QString &)));      listWidget->show();      layout->addWidget(listWidget);      layout->addWidget(label);      widget->setLayout(layout);      widget->show();      app.exec();        }  

 

运行如下图:

 


发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表