7.treeview
- ui

- mainwindow.h
#ifndef MAINWINDOW_H
#define MAINWINDOW_H #include <QMainWindow>
#include <QStringData>
#include <QStringList>
#include <QStringListModel> namespace Ui {
class MainWindow;
} class MainWindow : public QMainWindow
{
Q_OBJECT public:
explicit MainWindow(QWidget *parent = );
~MainWindow(); void inittree(); private slots:
void on_pushButton_clicked(); private:
Ui::MainWindow *ui;
28 QStringListModel *slm;
29 QStringList *sl;
}; #endif // MAINWINDOW_H - mainwindow.cpp
#include "mainwindow.h"
#include "ui_mainwindow.h" MainWindow::MainWindow(QWidget *parent) :
QMainWindow(parent),
ui(new Ui::MainWindow)
{
ui->setupUi(this);
inittree();
} MainWindow::~MainWindow()
{
delete ui;
} 17 //创建一个树
18 void MainWindow::inittree()
19 {
20 ui->treeWidget->clear();
21 //初始化
22 QTreeWidgetItem *group1 = new QTreeWidgetItem(ui->treeWidget);
23 group1->setText(0,"父1");
24
25 QTreeWidgetItem *sub1 = new QTreeWidgetItem(group1);
26 QTreeWidgetItem *sub2 = new QTreeWidgetItem(group1);
27 QTreeWidgetItem *sub3 = new QTreeWidgetItem(group1);
28 sub1->setText(0,"子1");
29 sub2->setText(0,"子2");
30 sub3->setText(0,"子3");
31
32 QTreeWidgetItem *ssub1 = new QTreeWidgetItem(sub1);
33 QTreeWidgetItem *ssub2 = new QTreeWidgetItem(sub1);
34 QTreeWidgetItem *ssub3 = new QTreeWidgetItem(sub1);
35 ssub1->setText(0,"孙1");
36 ssub2->setText(0,"孙2");
37 ssub3->setText(0,"孙3");
38
39 QTreeWidgetItem *sssub1 = new QTreeWidgetItem(sub2);
40 QTreeWidgetItem *sssub2 = new QTreeWidgetItem(sub2);
41 QTreeWidgetItem *sssub3 = new QTreeWidgetItem(sub2);
42 sssub1->setText(0,"孙1");
43 sssub2->setText(0,"孙2");
44 sssub3->setText(0,"孙3");
45
46 QTreeWidgetItem *ssssub1 = new QTreeWidgetItem(sub3);
47 QTreeWidgetItem *ssssub2 = new QTreeWidgetItem(sub3);
48 QTreeWidgetItem *ssssub3 = new QTreeWidgetItem(sub3);
49 ssssub1->setText(0,"孙1");
50 ssssub2->setText(0,"孙2");
51 ssssub3->setText(0,"孙3");
52 }
void MainWindow::on_pushButton_clicked()
{
//模型
57 slm = new QStringListModel(this);
58 //列表
59 sl = new QStringList();
60 //迭代器遍历树
61 QTreeWidgetItemIterator it(ui->treeWidget);
62 while(*it)
63 {
64 sl->append((*it)->text(0));
65 ++it;
66 }
67
68 //模型链接列表
69 slm->setStringList(*sl);
70 ui->listView->setModel(slm);
}
7.treeview的更多相关文章
- MVC树控件,mvc中应用treeview,实现复选框树的多层级表单控件
类似于多层级的角色与权限控制功能,用MVC实现MVC树控件,mvc中应用treeview,实现复选框树的多层级表单控件.最近我们的项目中需要用到树型菜单,以前使用WebForm时,树型菜单有微软提供的 ...
- WPF 自定义列表筛选 自定义TreeView模板 自定义ListBox模板
有很多项目,都有数据筛选的操作.下面提供一个案例,给大家做参考. 左侧是数据源,搜索框加TreeView控件,右侧是ListBox控件.在左侧数据列点击添加数据,然后点击确定,得到所筛选的数据. 下面 ...
- WinForm 进程、线程、TreeView递归加载、发送邮件--2016年12月13日
进程:一个程序就是一个进程,但是也有一个程序需要多个进程来支持的情况 进程要使用的类是:Process它在命名空间:System.Diagnostics; 静态方法Start(); Process.S ...
- wpf TreeView
<Window x:Class="WpfTutorialSamples.TreeView_control.TreeViewDataBindingSample" ...
- 【转载】关于treeview的多层显示的科学用法!
http://blogs.msdn.com/b/mikehillberg/archive/2009/10/30/treeview-and-hierarchicaldatatemplate-step-b ...
- winform进程、线程、TreeView递归加载
进程: 一般来说,一个程序就是一个进程,不过也有一个程序需要多个进程支持的情况. 进程所使用的类:Process 所需命名空间:System.Diagnostics; 可以通过进行来开启计算机上现有的 ...
- TreeView 使用方法:(在View.Details模式下)
1.建立TreeView的標題 2.建立TreeView的Item 3.在TreeView的Item中的建立SubItem 如果將各部 ...
- ASP.NET通过递归添加树(Treeview)
先来看看效果,基本上就是这样的. 所谓树,无非就是2点,第一个:根节点,第二:叶子节点,其中叶子节点中还可能有叶子节点,但是根节点始终只有一个. 下面贴上 各部分的代码 1.PAGE_LOAD载入事件 ...
- TreeView控件使用
treeView1.SelectedNode = treeView1.Nodes[0]; //选中当前treeview控件的根节点为当前节点添加子节点: TreeNode tmp; tmp = n ...
- 怎样制作web版的folder treeview
文件夹treeview的效果 这样的treeview在实际项目中使用的场景较多. 既然用的多,那就DIY一遍,虽没有面面俱到,但也要将其基本实现完成一遍. 1.先准备图标素材 file.gif,文件 ...
随机推荐
- 抽象工厂模式(AbsFactory)C++实现
模式意图:提供一个创建一系列相关或相互依赖对象的接口,二无需指定他们具体的类. 效果: 分离了具体的类. 使 a.客户与类的实现分离 b.客户通过抽象接口操纵实例 c.产品的类名在实现中 ...
- (转)19 个 JavaScript 有用的简写技术
1.三元操作符 当想写if...else语句时,使用三元操作符来代替. const x = 20; let answer; if (x > 10) { answer = 'is greater' ...
- javascript中的构造函数和原型及原型链
纯属个人理解,有错误的地方希望大牛指出,以免误人子弟 1.构造函数: 构造函数的作用 : 初始化由new创建出来的对象 new 的作用: 创建对象(空对象) new 后面跟的是函数调用,使用ne ...
- [Intermediate Algorithm] - Sum All Primes
题目 求小于等于给定数值的质数之和. 只有 1 和它本身两个约数的数叫质数.例如,2 是质数,因为它只能被 1 和 2 整除.1 不是质数,因为它只能被自身整除. 给定的数不一定是质数. 提示 For ...
- load 调用的顺序
主要是依赖关系. 调用的顺序 你过去可能会听说过,对于 load 方法的调用顺序有两条规则: 父类先于子类调用 类先于分类调用 这种现象是非常符合我们的直觉的,我们来分析一下这种现象出现的原因. 第一 ...
- 记一次IOS对 JS的支持问题
最终在这位博主那块找到问题https://blog.csdn.net/github_36487770/article/details/82465741 在利用Vue开发一个功能时遇到时间拼接格式化问题 ...
- 如何在IE11中设置兼容模式?设置的具体方法
IE11浏览器软件版本:简体中文正式版 For Win7网络工具立即查看 1.同样进入需要兼容性模式的网站,点击菜单栏位工具--F12开发者人员工具!如下图所示. 2.在开发者选项左下侧菜单栏位,点击 ...
- Java将数据以Excel文件形式导出后台代码实现
下面代码实现所需jar包: tomcat-embed-core-8.5.11.jar: commons-lang3-3.0.1.jar: commons-io-2.5.jar: poi-3.9.jar ...
- 编译qemu
el7上编译 git clone git://git.qemu-project.org/qemu.git ./configure --target-list=x86_64-softmmu --cpu= ...
- WEBGL学习【十三】鼠标点击立方体改变颜色的原理与实现
// PickFace.js (c) 2012 matsuda and kanda // Vertex shader program var VSHADER_SOURCE = 'attribute v ...