QComboBox 控件支持树形图显示。

A.  void QComboBox::setModel(QAbstractItemModel *model);

B.  void QComboBox::setView(QAbstractItemView *itemView);

步骤:

1. 先写一个TreeModel来显示自己的树形图的数据,用A接口:ui->comnoBox->setModel(m_treeModel); 来设置model

2. 在界面添加一个QTreeView,用B接口:ui->comboBox->setView(ui->treeView); 来设置view

再用树形图展示的时候,遇到了QComboBox的初始化显示一直不正确的问题,后来查到可以用以下方法解决:

      QModelIndex index = m_treeModel->getCurrentIndex();//此处为获取当前要初始化显示的树形图对应的index
ui->comboBox->setRootModelIndex(index.parent());
ui->comboBox->setModelColumn(index.column());
ui->comboBox->setCurrentIndex(index.row());
ui->comboBox->setRootModelIndex(QModelIndex());
ui->treeView->setCurrentIndex(index);

获取QComboBox选中的选项,可以通过:

QModelIndex index = ui->treeView->currentIndex();
来获取index,再依据index从model数据中取到对应的选项。

QComboBox 树形视图选择的更多相关文章

  1. PyQt(Python+Qt)学习随笔:QTreeView树形视图的allColumnsShowFocus属性

    老猿Python博文目录 专栏:使用PyQt开发图形界面Python应用 老猿Python博客地址 QTreeView树形视图的allColumnsShowFocus属性用于控制是否使视图中的所有列显 ...

  2. Qt 学习之路 2(47):视图选择

    Qt 学习之路 2(47):视图选择 豆子 2013年3月28日 Qt 学习之路 2 34条评论 选择是视图中常用的一个操作.在列表.树或者表格中,通过鼠标点击可以选中某一项,被选中项会变成高亮或者反 ...

  3. PyQt(Python+Qt)学习随笔:QTreeView树形视图的headerHiden属性

    老猿Python博文目录 专栏:使用PyQt开发图形界面Python应用 老猿Python博客地址 QTreeView树形视图的headerHiden属性用于控制视图中是否隐藏标题,为True隐藏,否 ...

  4. PyQt(Python+Qt)学习随笔:QTreeView树形视图的expandsOnDoubleClick属性

    老猿Python博文目录 专栏:使用PyQt开发图形界面Python应用 老猿Python博客地址 QTreeView树形视图的expandsOnDoubleClick属性用于控制鼠标双击是否展开或折 ...

  5. PyQt(Python+Qt)学习随笔:QTreeView树形视图的wordWrap属性

    老猿Python博文目录 专栏:使用PyQt开发图形界面Python应用 老猿Python博客地址 QTreeView树形视图的wordWrap属性用于控制视图展示数据项文本的单词换行原则,如果该值为 ...

  6. PyQt(Python+Qt)学习随笔:QTreeView树形视图的animated属性

    老猿Python博文目录 专栏:使用PyQt开发图形界面Python应用 老猿Python博客地址 QTreeView树形视图的animated属性用于控制视图在展开或收缩分支时是否展示动画,如果对应 ...

  7. PyQt(Python+Qt)学习随笔:QTreeView树形视图的sortingEnabled属性

    老猿Python博文目录 专栏:使用PyQt开发图形界面Python应用 老猿Python博客地址 QTreeView树形视图的sortingEnabled属性用于控制视图中的数据是否启用按表头排序, ...

  8. PyQt(Python+Qt)学习随笔:QTreeView树形视图的itemsExpandable属性

    老猿Python博文目录 专栏:使用PyQt开发图形界面Python应用 老猿Python博客地址 QTreeView树形视图的itemsExpandable属性用于控制视图中用户是否可以通过操作展开 ...

  9. PyQt(Python+Qt)学习随笔:QTreeView树形视图的rootIsDecorated属性

    老猿Python博文目录 专栏:使用PyQt开发图形界面Python应用 老猿Python博客地址 一.属性说明 QTreeView树形视图的rootIsDecorated属性用于控制是否展示对顶层项 ...

随机推荐

  1. python实战——教你用微信每天给女朋友说晚安

    但凡一件事,稍微有些重复.我就考虑怎么样用程序来实现它. 这里给各位程序员朋友分享如何每天给朋友定时微信发送”晚安“,故事,新闻,等等··· ··· 最好运行在服务器上,这样后台挂起来更方便. 准备 ...

  2. [VB.NET][C#]二维向量的基本运算

    前言 在数学中,几何向量指具有大小(Magnitude)和方向的几何对象,它在线性代数中经由抽象化有着更一般的概念.向量在编程中也有着及其广泛的应用,其作用在图形编程和游戏物理引擎方面尤为突出. 基于 ...

  3. 使用efwplusScript开发Winform程序【像小程序那样开发PC软件】

    一.前言 本人从事多年医疗管理软件的开发,在医院大多数的软件都还是CS程序,BS程序很少,对于使用者来说CS的操作体验确实比BS的要好. 1.CS的缺点就是升级麻烦,每次有新版本都需要所有客户端操作升 ...

  4. javaweb学习3——验证码

    声明:本文只是自学过程中,记录自己不会的知识点的摘要,如果想详细学习JavaWeb,请到孤傲苍狼博客学习,JavaWeb学习点此跳转 本文链接:https://www.cnblogs.com/xdp- ...

  5. 聊聊前段插件之Datatables

    在web开发过程中表格数据展示是一个很常见的功能,而且用户对其要求也比较高,性能.易用性等.今天我推荐一款利器给大家——Datatables:Datatables中文网. 一.介绍 Datatable ...

  6. UnityEditor扩展-Shader浏览器

    1. 用途 用于浏览项目所有Shader被使用的情况 2. 界面说明 Ignore Directory:添加不搜索的文件夹,不添加默认搜索全部 Find按钮:开始搜索 Used Shaders:已被使 ...

  7. Netty源码分析第3章(客户端接入流程)---->第3节: NioSocketChannel的创建

    Netty源码分析第三章: 客户端接入流程 第三节: NioSocketChannel的创建 回到上一小节的read()方法: public void read() { //必须是NioEventLo ...

  8. Windows下LimeSDR Mini使用说明

    本文内容.开发板及配件仅限用于学校或科研院所开展科研实验! 淘宝店铺名称:开源SDR实验室 LimeSDR链接:https://item.taobao.com/item.htm?spm=a230r.1 ...

  9. python-python爬取豆果网(菜谱信息)

    #-*- coding = utf-8 -*- #获取豆果网图片 import io from bs4 import BeautifulSoup import requests #爬取菜谱的地址 ur ...

  10. python FTP服务器实现(Python3)

    创建一个ftp.py文件(Linux环境),插入以下代码: from pyftpdlib.authorizers import DummyAuthorizer from pyftpdlib.handl ...