一.常用接口

1.添加数据

    QStringListModel *model;   model = new QStringListModel(this);model->setStringList(QStringList()<<"语文"<<"数学"<<"英语");ui->listView->setModel(model);

2.使用自定义的widget

这里使用QLineEdit来举例,可以使用自定义的widget,图如下,可以看到第二行变成了行编辑框。

    QLineEdit *lineEdit =  new QLineEdit(ui->listView);lineEdit->setText("数学");ui->listView->setIndexWidget(index,lineEdit);

3.设置默认哪一行选中

QModelIndex index2 = model->index(2);
ui->listView->setCurrentIndex(index2);

二.信号

以下信号经常使用


void activated(const QModelIndex &index)
void clicked(const QModelIndex &index)
void doubleClicked(const QModelIndex &index)
void entered(const QModelIndex &index)
void pressed(const QModelIndex &index)

简单相应点击的信号,点击后打印text

void Widget::on_listView_clicked(const QModelIndex &index)
{qDebug()<<model->data(index).toString();
}

三.右键弹出菜单

    //打开右键菜单属性ui->listView->setContextMenuPolicy(Qt::CustomContextMenu);//右键菜单menu = new QMenu(ui->listView);menu->addAction("添加");menu->addAction("删除");//响应右键菜单信号槽connect(ui->listView,&QListView::customContextMenuRequested,this,&Widget::slotCustomContextMenuRequested);void Widget::slotCustomContextMenuRequested(const QPoint &pos){menu->exec(ui->listView->mapToGlobal(pos));}

四.设置QSS


QListView
{show-decoration-selected: 1; /* make the selection span the entire width of the view */
}QListView::item:alternate
{background: #EEEEEE;
}QListView::item:selected
{border: 1px solid #6a6ea9;
}QListView::item:selected:!active
{background: qlineargradient(x1: 0, y1: 0, x2: 0, y2: 1,stop: 0 #ABAFE5, stop: 1 #8588B2);
}QListView::item:selected:active
{background: qlineargradient(x1: 0, y1: 0, x2: 0, y2: 1,stop: 0 #6a6ea9, stop: 1 #888dd9);
}QListView::item:hover
{background: qlineargradient(x1: 0, y1: 0, x2: 0, y2: 1,stop: 0 #FAFBFE, stop: 1 #DCDEF1);
}
//适用于开启交替颜色
QListWidget#listWidget
{alternate-background-color:blue;background:yellow
}

调用setStyleSheet即可

五.源码

QListView详解-C++文档类资源-CSDN下载

Qt QListView详解相关推荐

  1. Qt Phonon详解

    Qt Phonon详解(转帖) 前言 Phonon严格来说其实非为Qt的library,Phonon原本就是KDE 4的开放原始码多媒体API,後来与Qt合并与开发,所以简单来说就是Qt使用Phono ...

  2. Qt QSqlQueryModel详解

    1.功能概述 QSqlQueryModel是QSqlTableModel的父类.QSqlQueryModel封装了执行SELECT语句从数据库查询数据的功能,但是QSqlQueryModel只能作为只 ...

  3. Qt MetaObject 详解

    这个系列的几篇文章通过阅读Qt帮助文档和相关的源代码来学习研究Qt meta-object所提供的功能,及其实现的方式. Qt meta-object系统基于三个方面: 1.QObject提供一个基类 ...

  4. Qt QTreeWidget 详解

    Qt系列文章目录 文章目录 Qt系列文章目录 前言 主要API 示例 1.头文件: 2.实现文件 二.源码下载 前言 官方文档 QTreeWidget类是一个方便的类,它提供了一个标准tree小部件与 ...

  5. 《Qt 数据库详解》博客系列文章

    本文章原创于www.yafeilinux.com 转载请注明出处. 由于该系列文章图床都挂了,特下载原文博客的word版. 详细博客请点附件下载. 21-Qt数据库(一)简介 22-Qt数据库(二)添 ...

  6. Qt QList详解

    1.QList是一种表示链表的模板类. 2.QList是Qt的一种泛型容器类.它以链表方式存储一组值,并能对这组数据进行快速索引,还提供了快速插入和删除等操作. 3.QList.QLinkedList ...

  7. Qt MetaObject 详解之二:QMeta数据以及数据结构信息

    如果一个类的声明中包含Q_OBJECT宏,那么qmake将为这个类生成 meta信息,这个信息在前一篇中所提到的moc文件中.这一篇通过解析这个一个示例moc文件来阐述这些meta信息的存储方式和格式 ...

  8. Qt QVector 详解:从底层原理到高级用法

    目录标题 引言:QVector的重要性与简介 QVector的常用接口 QVector和std::Vector 迭代器:遍历QVector 中的元素(Iterators: Traversing Ele ...

  9. VS中使用Qt方法详解

    在 Qt Creator 中可以使用 MSVC 编译工具对 Qt 项目进行编译.若有人比较习惯于使用 Visual Studio,或某些项目必须使用 Visual Studio,也可以在 Visual ...

  10. Qt QSet 详解:从底层原理到高级用法

    目录标题 引言:QSet的重要性与简介 QSet 的常用接口 迭代器:遍历Qset 中的元素(Iterators: Traversing Elements in Qset ) 高级用法:QSet 中的 ...

最新文章

  1. Linux 开机网络无法自动连接配置、网络开机自动连接
  2. 2014年中回首与展望
  3. CVE-2016-1779技术分析及其背后的故事
  4. CS190.1x-ML_lab1_review_student
  5. EPERM: operation not permitted, mkdir 'C:\Program Files\nodejs'
  6. 成员缩写_「gnps,nbcs」是什么意思?00后饭圈缩写你看懂多少
  7. mathwin.top 联系我们_设计:“有目的”的“因果联系”
  8. 解决opensips NAT 问题和ACK不能正常转发问题
  9. 【华为云技术分享】深度详解GaussDB bufferpool缓存策略
  10. 【华为云技术分享】云小课 | 容灾切换:业务一键切换到容灾站点
  11. 黑科技抗疫,Python 开发者大集结!
  12. 【AS3代码】正则表达式的各种用法和小实例
  13. >>’ should be ‘> >’ within a nested template argument list
  14. 这场直播,我们把 Apache 顶级项目盛会搬来了!
  15. 拓端tecdat|R语言作图不显示中文解决办法,如何使用中文字体
  16. VNCTF2021[WEB]
  17. 课程设计题二:7人多数表决器
  18. Javaweb常用单词
  19. 修改服务器配额有什么坏处,云服务器配额调整
  20. win7 使用扫描仪扫描照片

热门文章

  1. Apollo详解之canbus模块——车辆底层协议调试
  2. 仓储系统货位优化毕业论文【Flexsim仿真】
  3. 求解哈夫曼编码Java实现,哈夫曼编码(Java)
  4. LayUI_03 前端框架 内置模块
  5. 软件测试 (5) 数据库语句
  6. MVCC(多版本并发控制)原理
  7. 固态硬盘坏块修复工具_坏道和坏块什么区别?硬盘高级修复教程来了
  8. 硬盘坏道修复软件测试工程师,硬盘坏道检测,教您如何修复硬盘坏道
  9. JRebel的安装与激活
  10. PHP调用拼多多接口以及配置签名