qt treewidget 选中怎样用ui

如何给TreeWidget的目录加上一个图标,且右键点击,可以显示菜单事件
[问题点数:30分,结帖人yunjintou]
如何给TreeWidget的目录加上一个图标,且右键点击,可以显示菜单事件
[问题点数:30分,结帖人yunjintou]
不显示删除回复
显示所有回复
显示星级回复
显示得分回复
只显示楼主
匿名用户不能发表回复!|QT的qtreewidget中设置某一列可编辑
[问题点数:40分,结帖人qhyhaiyang]
QT的qtreewidget中设置某一列可编辑
[问题点数:40分,结帖人qhyhaiyang]
不显示删除回复
显示所有回复
显示星级回复
显示得分回复
只显示楼主
2013年2月 移动平台大版内专家分月排行榜第三
2012年9月 移动平台大版内专家分月排行榜第二
2012年11月 移动平台大版内专家分月排行榜第三
2012年9月 移动平台大版内专家分月排行榜第二
2012年11月 移动平台大版内专家分月排行榜第三
匿名用户不能发表回复!|【图片】[转载]QT学习之路40:QTreeWidget【邓文武吧】_百度贴吧
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&签到排名:今日本吧第个签到,本吧因你更精彩,明天继续来努力!
本吧签到人数:0可签7级以上的吧50个
本月漏签0次!成为超级会员,赠送8张补签卡连续签到:天&&累计签到:天超级会员单次开通12个月以上,赠送连续签到卡3张
关注:55贴子:
[转载]QT学习之路40:QTreeWidget
作者:FinderCheng地址:接着前面的内容,今天要说的是另外一个item-view类:QTreeWidget,顾名思义,这个类用来展示树型结构。同前面说的QListWidget类似,这个类需要同另外一个辅助类QTreeWidgetItem一同使用。不过,既然是提供方便的封装类,即便是看上去很复杂的树,在使用这个类的时候也是显得比较简单的。当不需要使用复杂的QTreeView的特性的时候,我们可以直接使用QTreeWidget代替。注:QTreeWidget的显示效果与MFC的TreeCtrl控件类似,而QTreeWidget与QTReeView的区别在于QTreeWidget面向QTreeWidgetItem,而QTreeView是面向model的。下面我们通过一个简单的示例来说明QTreeWidget的用法。
示例程序的结构如下:主窗口部件的头文件如下:
主窗口部件的实现文件如下:main()函数的实现如下:
首先,我们在构造函数里面创建了一个QTreeWidget的实例。然后我们调用setColumnCount()函数设定栏数,这个函数的效果我们以后再看。由于QTreeWidget是基于item-view的,因此我们要向QTreeWidget添加QTreeWidgetItem。QTreeWidgetItem有九个重载的构造函数,我们在这里只是来看看其中的一个,其余的请自行查阅API文档,这个构造函数的签名如下:QTreeWidgetItem::QTreeWidgetItem ( QTreeWidget * parent, const QStringList & strings, int type = Type );这个构造函数有三个参数:第一个参数QTreeWidget *parent用于指定这个item属于哪一个树;第二个参数const QStringList &strings用于指定这个item显示的文字;第三个参数int type用于指定这个item的类型,Type有两个可行的取值:QTreeWidgetItem::Type和QTreeWidgetItem::UserType,由于我们并没有定义用户类型,所以只使用其默认值即可。这里你会奇怪,第二个参数为什么是一个QStringList类型的,而不是QString类型的?我们先不去管它,继续下面的代码。后面我们又创建了两个QTreeWidgetItem,注意它们的第一个参数不是QTreeWidget而是QTreeWidgetItem类型的,这就把它的父节点设置为前面我们定义的root了。然后我们使用了setCheckState()函数,让第二个子节点变得可以选择,最后使用addChild()函数把它们添加进来。最后一步,我们创建了一个QList类型,前面的root添加进去,然后insert到topitems。m_QMyTree-&insertTopLevelItems(0, m_RootList);这里可以想象到,由于这个树组件可以由多个根组成(严格来说这已经不是树了,不过姑且还是叫树吧),所以我们传进来的是一个list。注意,QTreeWidget默认收起其子节点,因此我们使用下面这条语句将所有子节点展开:m_QMyTree-&expandAll();expandAll()函数可对任何有子节点的根节点使用。编译运行,结果如下:样子同我们想象的基本一致,只是这个树的头上怎么会有一个1?还记得我们跳过去的那个函数setColumnCount()吗?下面我们修改一下代码看看这个函数的功能是什么。
这里我们使QTreeWidget有两列,第一列为节点名称,第二列为节点序号,同时使用setColumnWidth()来设定了第一列的宽度以展开所有文字,运行效果如下:原来这个setcolumnCount()就是用于在列表中显示树的!这样,你就可以很容易的将树和列表结合在一起,从而实现类似Windows资源管理器的界面。当然,如果你不需要显示这个header,可以调用setHeaderHidden()函数将这个功能隐藏掉。总之,API文档是很有用的,要想精通必须慢慢看,慢慢领悟!
贴吧热议榜
使用签名档&&
保存至快速回贴扫一扫体验手机阅读
qt QTreeWidget右键菜单函数,以备自己翻阅
<span type="1" blog_id="1537481" userid='
分享到朋友圈
关注作者,不错过每一篇精彩没有更多推荐了,
不良信息举报
举报内容:
Qt入门-QTreeWidget类
举报原因:
原文地址:
原因补充:
最多只允许输入30个字
加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!

我要回帖

更多关于 qt ui自定义的widget 的文章

 

随机推荐