博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
QT项视图之QListWidget
阅读量:5838 次
发布时间:2019-06-18

本文共 2061 字,大约阅读时间需要 6 分钟。

QT的项视图类有:QListWidget,QTableWidget,QTreeWidget

QT的视图有:QListView,QTableView,QTreeView

QT的模型有:QSqlTableModel,QStringListModel,QDirModel..等

头文件:

 
#ifndef XLISTWIDGET_H
#define XLISTWIDGET_H
 
#include 
#include
 
class QDialogButtonBox;
class QIcon;
class QListWidget;
 
class XListWidget : public QDialog
{
Q_OBJECT
 
public:
XListWidget(const QMap
&symbolMap,QWidget *parent = 0);
~XListWidget();
private:
QIcon iconForSymbol(const QString &symbolName);
QListWidget *listWidget;
QDialogButtonBox *buttonBox;
};
 
#endif // XLISTWIDGET_H
 

cpp文件:

 
#include
#include 
#include "xlistwidget.h"
 
XListWidget::XListWidget(const QMap
&symbolMap,
QWidget *parent)
: QDialog(parent)
{
listWidget = new QListWidget;
listWidget->setIconSize(QSize(60,60));
 
QMapIterator
i(symbolMap);
while(i.hasNext()){
i.next();
QListWidgetItem *item = new QListWidgetItem(i.value(),listWidget);
item->setIcon(iconForSymbol(i.value()));
item->setData(Qt::UserRole,i.key());
}
QVBoxLayout *mainLayout = new QVBoxLayout;
mainLayout->addWidget(listWidget);
setLayout(mainLayout);
}
 
XListWidget::~XListWidget()
{
 
}
 
QIcon XListWidget::iconForSymbol(const QString &symbolName)
{
QString fileName = ":/images/" + symbolName.toLower();
qDebug()<<"fileName"<
fileName.replace(' ', '-');
return QIcon(fileName);
}

main.cpp

 

 
#include 
#include "xlistwidget.h"
 
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
 
QMap
symbolMap;
symbolMap.insert(132, QObject::tr("Data.png"));
symbolMap.insert(134, QObject::tr("Decision.png"));
symbolMap.insert(137, QObject::tr("Document.png"));
symbolMap.insert(138, QObject::tr("Manual Input.png"));
symbolMap.insert(139, QObject::tr("Manual Operation.png"));
symbolMap.insert(141, QObject::tr("On Page Reference.png"));
symbolMap.insert(142, QObject::tr("Predefined Process.png"));
symbolMap.insert(145, QObject::tr("Preparation.png"));
symbolMap.insert(150, QObject::tr("Printer.png"));
symbolMap.insert(152, QObject::tr("Process.png"));
 
XListWidget w(symbolMap);
w.show();
 
return a.exec();
}
 

 

转载地址:http://iljcx.baihongyu.com/

你可能感兴趣的文章
ZROI2018提高day1t2
查看>>
商务谈判的要素(外包)
查看>>
popup定位引擎popper.js介绍
查看>>
洛谷 P1281 书的复制
查看>>
一本通 1616:A 的 B 次方
查看>>
CSS属性display的浅略探讨
查看>>
Swagger 专题
查看>>
spring mvc DispatcherServlet详解之前传---前端控制器架构
查看>>
IntelliJ IDEA 编译方式介绍
查看>>
MySQL can’t specify target table for update in FROM clause
查看>>
git pull VS git fetch&merge(good)
查看>>
解决CentOS(RedHat)中sendmail和sm-client启动慢故障(转)
查看>>
CodeForces 13E 分块
查看>>
老王python博客
查看>>
hadoop需要哪些技术支持
查看>>
Unity-Animator(Mecanim)深入系列总索引
查看>>
mysql 优化
查看>>
Vue重修02
查看>>
volatile关键字
查看>>
UNIX Filesystems - Evolution Design and Implementation.pdf
查看>>