QTreeView
更新时间:2024-06-18 14:46:01 阅读量: 综合文库 文档下载
QTreeViewClass
QTreeView提供了一种默认的model/view实现了tree view 描述
QTreeView实现一种树状表达的项目模型。这个类是用来提供标准分级列表,以前是通过QListView类提供的,但使用QT提供的方法model/view体系结构更灵活
QTreeView是Model/View之一,也是QT model/view framework的一部分
QTreeView通过QAbstractltemView实现了那个接口允许它通过model获得 QAbstractItemModel的数据
它是一种简单的tree view结构。在下面的列子里,一个目录的内容由QFileSystemModel提供并显示树:
model/view架构确保树视图的内容更容易更新
Items的孩子可以被expanded(显示),也可以被collapsed(隐藏)。当状态改变collapsed()或者expanded()信号就会被触发
Headers在tree view是通过QHeaderView构造的,可以通过使用header()->hide()隐藏起来。注意,每个头配置stretchLastSection,并设置其为true,确保视图不浪费任何空间的分配给它的头,如果这个值设置为true,该属性将覆盖调整模式设置在最后一节头
默认情况下,使用QHeaderView的setSectionsMovable()函数限制这些列的运动(在tree view中所有的列除了header)关于重新安排部分的更多信息,请参见Moving Header Sections
Key Bindings
QTreeView支持设置Key Bindings,允许用户navigate,下面是有关的项:
属性
allCloumnShowFocus:bool
这个属性保存item是否应该使用所有列显示键盘焦点。如果这个属性是真的所有列将显示焦点,否则只有一列将显示焦点 存取函数
Bool allCloumnShowFocus()
Void setallCloumnShowFocus(bool enable)
animated:bool
这个属性保存动画是否启用 存取函数
Bool isAnimated()
Void setAnimated(bool enable)
autoExpandDelay:int
这个属性保存了一个项目open during 一个拖放操作的延迟时间
这个属性保存的时间以毫秒为单位,用户必须等待前一个节点,节点会自动打开或关闭。如果时间设置小于0,它将不会被激活。默认值为-1 存取函数
Int autoExpandDelay()
Void setAutoExpandDelay(int delay)
expandsOnDoubleClick:bool
这个属性保存该项目是否能够通过双击扩展 存取函数
Bool expandsOnDoubleClick()
Void setexpandsOnDoubleClick(bool enable)
headerHidden:bool
这个属性保存header显示OR No 存取函数
Bool isHeaderHidden()
Void setHeaderHidden(bool hide)
indentation:int
这个属性保存了tree view中的缩进的item 存取函数 Int indentation()
Void setIndentation(int i) Void resetIndentation()
itemsExpandable:bool
这个属性保存item是否可以被用户扩展 默认值为true 存取函数
Bool itemsExpandable()
Void setItemsExpandable(bool enable)
rootlsDecorated:bool
这个属性保存是否显示ecpanding和collapse的顶级项目 默认值为true 存取函数
Bool rootlsDecorated()
Void setrootlsDecorated(bool show)
sortingEnabled:bool
这个属性保存排序是否启用 默认为false
注意:为了避免性能问题,建议启用排序后将item插入到树中。或者,你也可以插入item列表之前将条目插入到树中
存取函数
Bool issortingEnabled()
Void setsortingEnabled(bool enable)
uniformRowHeights:bool
这个属性保存树状视图中的所有item是否有相同的高度 默认值为false
如果是保证视图中的所有项目都有相同的高度这个属性应该设置为true。这使得视图做更优化一些 存取函数
Bool uniformRowHeights()
Void setuniformRowHeights(bool uniform)
wordWrap:bool
这个属性保存条目的文本换行例政策
如果是真的,那么这个属性项的文本包装在必要时word-breaks;否则它不是包装。该属性默
认是假的 存取函数 Bool wordWrap()
Void setWordWrap(bool on) 函数
QTreeView(QWidget*parent = 0) ~QTreeView()
Void collapse(const QModelIndex &index) [槽] 更具给定的索引collapses(隐藏) model
Void collapseAll() [槽] Collapse(隐藏) 所有的item
Void collapsed(const QModelIndex &index) [信号] 当item根据给定的index 被collapse(隐藏)触发该信号
Int columnAt(int x)
返回tree view的列header覆盖被给的X坐标
Void columnCountChange(int oldCount ,int newCount) [protected slot] 通知的树视图树视图中的列的数量已经从oldCount 更改到newCount
Void columnMoved() [protected slot]
This slot is called whenever a column has been moved
Void columnResize(int column,int oldSize,int newSize)[ protected slot] 当在headerd的列改变时被调用
Int columnViewPosition(int column) 返回在viewport列的水平位置
Int columnWidth(int column) 返回列的宽度
Void currentChanged(const QModelIndex ¤t,const QModelIndex& previous)[virtual protected] 重载QAbstractItemView::cyrrentChanged()
Void dataChanged(const QModelIndex & topLeft,const QModelIndex &bottomRight,const QVector
重载QAbstractItemView::dataChange
void dragMoveEvent(QDragMoveEvent * event) 重载QWidget::dragMoveEvent()
Void drawBranches(QPainter *painter,const ARect & rect,const QModelIndex &index) 使用给定的painter ,在指定的矩形中画branches
Void drawRow(QPainter*painter,const QStyleOptionViewItem &option,const QModelIndex &index) 使用给定的painter画视图,其中包括模型中行项的指数
Void drawTree(QPainter*painter,const QRegion ®ion) 用指定的painter画tree的部分(region交叉的部分)
Void expand(const QModelIndex &index)[槽] 根据索引扩展指定的item
Void expandAll()[槽] 扩展所有的item
Void expandToDepth(int depth) [槽] 根据depth扩展所有可以扩展的item
Void eapanded(const QModelIndex & index) 当指定索引项扩展触发信号
QHeaderView *header() const 返回tree view的header
void hideColumn(int column)[槽] 隐藏指定的列
int horizontalOffset() const [virtual protected] 重载QAbstractItemView::horizontalOffset()
QModelIndex indexAbove(const QModelIndex & index) const 返回项above index模型指数
QModelIndex indexAt(const QPoint & point) const 重载QAbstractItemView::indexAt()
QModelIndex indexBelow(const QModelIndex & index) const 返回项below index模型指数
int indexRowSizeHint(const QModelIndex & index) const 通过索引返回提示行
bool isColumnHidden(int column) const 返回指定的列是否被隐藏
bool isExpanded(const QModelIndex & index) const 根据ModelIndex返回item是否可被扩展
bool isFirstColumnSpanned(int row, const QModelIndex & parent) const 返回true,如果项目在给定行第一列的父母是跨越所有列;否则返回false
bool isIndexHidden(const QModelIndex & index) const 重载QAbstractItemView::isIndexHidden()
bool isRowHidden(int row, const QModelIndex & parent) const 列是否可被隐藏
void resizeColumnToContents(int column) 调整列的大小,内容的大小
int rowHeight(const QModelIndex & index) const 返回一行的高度由给定的指数表示
void rowsRemoved(const QModelIndex & parent, int start, int end) 通知视图,从一开始行到最后一行的行包含了给定的父模型项目
void setColumnHidden(int column, bool hide) 设置指定的列隐藏
void setColumnWidth(int column, int width) 设置指定列的宽
void setExpanded(const QModelIndex & index, bool expanded) 根据扩展的价值设置项被指数Expand或collapse
void setFirstColumnSpanned(int row, const QModelIndex & parent, bool span) 如果span为真,排在第一列的item与给定的parent将跨所有列,否则显示所有项目的行。
void setRowHidden(int row, const QModelIndex & parent, bool hide) 如果hide为TRUE,指定的row和parent被隐藏,否则显示
void setTreePosition(int index) 根据index设置tree的position
void showColumn(int column)[槽] 显示给定的列
void sortByColumn(int column, Qt::SortOrder order) 对给定的列和值排序
int treePosition() const
返回逻辑坐标的设置。如果返回-1说明the tree placed on the visual index 0
正在阅读:
QTreeView06-18
浅谈高层建筑给排水工程设计05-03
WTOTBT协议全文10-11
《三国演义》中的战争描写01-24
给予作文500字06-21
浅谈市政地下管网渗漏问题分析及解决方案09-14
- 多层物业服务方案
- (审判实务)习惯法与少数民族地区民间纠纷解决问题(孙 潋)
- 人教版新课标六年级下册语文全册教案
- 词语打卡
- photoshop实习报告
- 钢结构设计原理综合测试2
- 2014年期末练习题
- 高中数学中的逆向思维解题方法探讨
- 名师原创 全国通用2014-2015学年高二寒假作业 政治(一)Word版
- 北航《建筑结构检测鉴定与加固》在线作业三
- XX县卫生监督所工程建设项目可行性研究报告
- 小学四年级观察作文经典评语
- 浅谈110KV变电站电气一次设计-程泉焱(1)
- 安全员考试题库
- 国家电网公司变电运维管理规定(试行)
- 义务教育课程标准稿征求意见提纲
- 教学秘书面试技巧
- 钢结构工程施工组织设计
- 水利工程概论论文
- 09届九年级数学第四次模拟试卷
- 各所大学考研 控制理论与控制工程初试复试专业课查询
- 当代西方“整体政府”公共服务模式及其借鉴
- 高中英语 unit2 robots单元测试3 新人教版选修7
- 11、保护环境 爱护家园
- 南陈路(京密路~昌金路段)道路改造及
- 1古代汉语考研辅导标点断句部分
- 课题《初中生物实验探究能力培养策略的研究》的实施方案
- 产品管理大纲
- 未来出版社三年级上册品德与社会教案
- 2018年广东省深圳市生地会考真题及答案
- 浅议中小企业期间费用的控制(曾建庭)
- 石泉县高效节水灌溉项目典型设计
- 连续梁桥设计计算
- IT行业人员联系表B
- 通风区管理制度岗位责任制文件
- 文秘知识(公共部分)
- MSP430寄存器详细分类
- 圆柱、圆锥的表面积与体积练习题 - 1 -
- 设计投标书格式
- 2015生物中考试题分类——绿色开花植物的一生