QTreeView 类
QTreeView 类提供了一个树视图的默认模型/视图实现。 更多...
头文件 | #include <QTreeView> |
CMake | find_package(Qt6 REQUIRED COMPONENTS Widgets) target_link_libraries(mytarget PRIVATE Qt6::Widgets) |
qmake | QT += widgets |
继承自 | QAbstractItemView |
继承 |
属性
|
|
公开函数
QTreeView(QWidget *parent = nullptr) | |
virtual | ~QTreeView() |
bool | allColumnsShowFocus() const |
int | autoExpandDelay() const |
int | columnAt(int x) const |
int | columnViewportPosition(int column) const |
int | columnWidth(int column) const |
bool | expandsOnDoubleClick() const |
QHeaderView * | header() const |
int | indentation() const |
QModelIndex | indexAbove(const QModelIndex &index) const |
QModelIndex | indexBelow(const QModelIndex &index) const |
bool | isAnimated() const |
bool | isColumnHidden(int column) const |
bool | isExpanded(const QModelIndex &index) const |
bool | isFirstColumnSpanned(int row, const QModelIndex &parent) const |
bool | isHeaderHidden() const |
bool | isRowHidden(int row, const QModelIndex &parent) const |
bool | isSortingEnabled() const |
bool | itemsExpandable() const |
void | resetIndentation() |
bool | rootIsDecorated() const |
void | setAllColumnsShowFocus(bool enable) |
void | setAnimated(bool enable) |
void | setAutoExpandDelay(int delay) |
void | setColumnHidden(int column, bool hide) |
void | setColumnWidth(int column, int width) |
void | setExpanded(const QModelIndex &index, bool expanded) |
void | setExpandsOnDoubleClick(bool enable) |
void | setFirstColumnSpanned(int row, const QModelIndex &parent, bool span) |
void | setHeader(QHeaderView *header) |
void | setHeaderHidden(bool hide) |
void | setIndentation(int i) |
void | setItemsExpandable(bool enable) |
void | setRootIsDecorated(bool show) |
void | setRowHidden(int row, const QModelIndex &parent, bool hide) |
void | setSortingEnabled(bool enable) |
void | setTreePosition(int index) |
void | setUniformRowHeights(bool uniform) |
void | setWordWrap(bool on) |
int | treePosition() const |
bool | uniformRowHeights() const |
bool | wordWrap() const |
重写的公共函数
virtual void | dataChanged(const QModelIndex &topLeft, const QModelIndex &bottomRight, const QList<int> &roles = QList<int>()) override |
virtual QModelIndex | indexAt(const QPoint &point) const override |
virtual void | keyboardSearch(const QString &search) override |
virtual void | reset() override |
virtual void | scrollTo(const QModelIndex &index, QAbstractItemView::ScrollHint hint = EnsureVisible) override |
virtual void | selectAll() override |
virtual void | setModel(QAbstractItemModel *model) override |
virtual void | setRootIndex(const QModelIndex &index) override |
virtual void | setSelectionModel(QItemSelectionModel *selectionModel) override |
virtual QRect | visualRect(const QModelIndex &index) const override |
公共槽
void | collapse(const QModelIndex &index) |
void | collapseAll() |
void | expand(const QModelIndex &index) |
void | expandAll() |
void | expandRecursively(const QModelIndex &index, int depth = -1) |
void | expandToDepth(int depth) |
void | hideColumn(int column) |
void | resizeColumnToContents(int column) |
void | showColumn(int column) |
void | sortByColumn(int column, Qt::SortOrder order) |
信号
受保护函数
virtual void | drawBranches(QPainter *painter, const QRect &rect, const QModelIndex &index) const |
virtual void | drawRow(QPainter *painter, const QStyleOptionViewItem &option, const QModelIndex &index) const |
void | drawTree(QPainter *painter, const QRegion ®ion) const |
int | indexRowSizeHint(const QModelIndex &index) const |
int | rowHeight(const QModelIndex &index) const |
重写的受保护函数
virtual void | changeEvent(QEvent *event) override |
virtual void | currentChanged(const QModelIndex ¤t, const QModelIndex &previous) override |
virtual void | dragMoveEvent(QDragMoveEvent *event) override |
virtual int | horizontalOffset() const override |
virtual bool | isIndexHidden(const QModelIndex &index) const override |
virtual void | keyPressEvent(QKeyEvent *event) override |
virtual void | mouseDoubleClickEvent(QMouseEvent *event) override |
virtual void | mouseMoveEvent(QMouseEvent *event) override |
virtual void | mousePressEvent(QMouseEvent *event) override |
virtual void | mouseReleaseEvent(QMouseEvent *event) override |
virtual QModelIndex | moveCursor(QAbstractItemView::CursorAction cursorAction, Qt::KeyboardModifiers modifiers) override |
virtual void | paintEvent(QPaintEvent *event) override |
virtual void | rowsAboutToBeRemoved(const QModelIndex &parent, int start, int end) override |
virtual void | rowsInserted(const QModelIndex &parent, int start, int end) override |
virtual void | scrollContentsBy(int dx, int dy) override |
virtual QModelIndexList | selectedIndexes() const override |
virtual void | selectionChanged(const QItemSelection &selected, const QItemSelection &deselected) override |
virtual void | setSelection(const QRect &rect, QItemSelectionModel::SelectionFlags command) override |
virtual int | sizeHintForColumn(int column) const override |
virtual void | timerEvent(QTimerEvent *event) override |
virtual void | updateGeometries() override |
virtual int | verticalOffset() const override |
virtual bool | viewportEvent(QEvent *event) override |
virtual QSize | viewportSizeHint() const override |
virtual QRegion | visualRegionForSelection(const QItemSelection &selection) const override |
受保护槽函数
void | columnCountChanged(int oldCount, int newCount) |
void | columnMoved() |
void | columnResized(int column, int oldSize, int newSize) |
void | rowsRemoved(const QModelIndex &parent, int start, int end) |
详细信息
A QTreeView实现了从模型中项目的树表示。这个类用于提供标准分层列表,以前由QListView类提供,但现在使用更灵活的方法,提供Qt的模型/视图架构。
QTreeView类是模型/视图类之一,它是Qt的模型/视图框架的一部分。
QTreeView实现了由QAbstractItemView类定义的接口,允许它显示由派生自QAbstractItemModel类的模型提供的数据。
构建一个显示模型数据的树视图很简单。在下面的例子中,一个目录的内容由QFileSystemModel提供,并作为树来显示
QFileSystemModel *model = new QFileSystemModel; model->setRootPath(QDir::currentPath()); QTreeView *tree = new QTreeView(splitter); tree->setModel(model);
模型/视图架构确保当模型变化时,树视图的内容会更新。
有子项目的项可以处于展开(子项可见)或折叠(子项隐藏)的状态。当此状态改变时,会发出一个 với 模型索引的collapsed() 或 expanded() 信号。
用于表示层次级别深度的缩进量由indentation属性控制。
树视图的标题使用QHeaderView类构建,可以使用header()->hide()
隐藏。注意,每个标题都配置了其 stretchLastSection 属性设置为true,以确保视图不会浪费分配给其标题的空间。如果此值设置为true,则此属性将覆盖最后部分在标题上的调整大小模式。
默认情况下,除了第一列之外,树视图中的所有列都可以移动。要禁用这些列的移动,请使用QHeaderView的setSectionsMovable()函数。有关排列部分更多信息的更多信息,请参阅移动标题部分。
快捷键绑定
QTreeView支持一组键绑定,使用户能够在视图中导航并与项的内容交互
键 | 操作 |
---|---|
向上 | 将光标移动到上一行同一列的项。如果当前项的父项没有更多的行可以进行导航,则光标移动到父项之前同级中的相关项。 |
向下 | 将光标移动到下一行同一列的项。如果当前项的父项没有更多的行可以进行导航,则光标移动到父项之后同级中的相关项。 |
向左 | 通过折叠分支来隐藏当前项的子项(如果存在)。 |
减号 | 与向左相同。 |
向右 | 通过展开分支来显示当前项的子项(如果存在)。 |
加号 | 与向右相同。 |
星号 | 展开当前项及其所有子项(如果存在)。 |
向上翻页 | 将光标向上移动一页。 |
向下翻页 | 将光标向下移动一页。 |
首页 | 将光标移动到模型中最顶层项的第一行同一列的项。 |
末页 | 将光标移动到模型中最底层项的最后行同一列的项。 |
F2 | 在可编辑的模型中,这会打开当前项进行编辑。可以使用Escape键取消编辑过程并撤销对显示的数据所做的任何更改。 |
提高性能
可以根据视图处理的数据给视图提供提示,以提高它显示大量项的性能。对于打算显示齐等高度的项的视图,可以将uniformRowHeights属性设置为true的一种方法。
另请参阅 QListView、QTreeWidget、视图类、QAbstractItemModel 和 QAbstractItemView。
属性文档
allColumnsShowFocus : bool
此属性表示是否使用所有列显示项目键盘焦点
如果此属性为 true
,则所有列将显示焦点;否则,只显示一列焦点。
默认为 false。
访问函数
bool | allColumnsShowFocus() const |
void | setAllColumnsShowFocus(bool enable) |
animated : bool
此属性表示是否启用动画
如果此属性为 true
,则树视图将动画展开和折叠分支。如果此属性为 false
,则树视图将立即展开或折叠分支而不会显示动画。
默认情况下,此属性为 false
。
访问函数
bool | isAnimated() const |
void | setAnimated(bool enable) |
autoExpandDelay : int
此属性表示在拖放操作期间,在树中打开项目之前的延迟时间
此属性表示用户必须在一个节点上等待多长时间(以毫秒为单位),那个节点才会自动打开或关闭。如果时间设置为小于 0,则不会激活。
默认情况下,此属性的值为 -1,表示自动展开已禁用。
访问函数
int | autoExpandDelay() const |
void | setAutoExpandDelay(int delay) |
expandsOnDoubleClick : bool
此属性表示是否可以通过双击来展开项目
此属性表示用户是否可以通过双击来展开和折叠项目。默认值是 true。
访问函数
bool | expandsOnDoubleClick() const |
void | setExpandsOnDoubleClick(bool enable) |
另请参阅 itemsExpandable。
headerHidden : bool
此属性表示是否显示表头
如果此属性为 true
,则不显示表头;否则显示。默认值为 false。
访问函数
bool | isHeaderHidden() const |
void | setHeaderHidden(bool hide) |
另请参阅 header().
indentation : int
树视图中项的缩进
此属性表示树视图中每级的项目缩进(以像素为单位)。对于顶层项,缩进指定从视口边缘到第一列项的水平距离;对于子项,它指定它们与父项的缩进。
默认情况下,此属性的值取决于样式。因此,当样式更改时,此属性会从中更新。调用 setIndentation() 会停止更新,调用 resetIndentation() 将恢复默认行为。
访问函数
int | indentation() const |
void | setIndentation(int i) |
void | resetIndentation() |
itemsExpandable : bool
此属性表示项目是否可由用户展开
此属性表示用户是否可以交互式地展开和折叠项目。
默认情况下,此属性为 true
。
访问函数
bool | itemsExpandable() const |
void | setItemsExpandable(bool enable) |
rootIsDecorated : bool
此属性表示是否显示顶层项目的展开和收起控件
带子项的项通常带有展开和收起的控件,允许显示或隐藏其子项。如果此属性为 false,则不显示顶层项的控件。这可以用来让单级树结构看起来像简单的事项列表。
默认情况下,此属性为 true
。
访问函数
bool | rootIsDecorated() const |
void | setRootIsDecorated(bool show) |
sortingEnabled : bool
此属性表示是否启用了排序
如果此属性为 true
,则树启用排序;如果属性为 false,则不启用排序。默认值是 false。
注意: 为了避免性能问题,建议在将项目插入树之后才启用排序。或者,您也可以先将项目插入列表,然后再将项目插入树。
访问函数
bool | isSortingEnabled() const |
void | setSortingEnabled(bool enable) |
另请参阅 sortByColumn。
uniformRowHeights : bool
此属性表示树视图中所有项的高度是否相同
只有当保证视图中所有项高度相同时,才应将此属性设置為 true。这可以启用视图进行某些优化。
高度从视图中的第一个项获取。当该项的数据改变时,它会更新。
注意: 如果编辑器大小提示大于单元大小提示,则将使用编辑器的大小提示。
默认情况下,此属性为 false
。
访问函数
bool | uniformRowHeights() const |
void | setUniformRowHeights(bool uniform) |
wordWrap : bool
此属性表示项文本的换行策略
如果此属性为 true
,则项文本将在需要的位置进行单词拆分;否则不会进行拆分。此属性默认为 false
。
注意,即使启用了换行,单元格也不会扩展以适应所有文本。将根据当前的 textElideMode 插入省略号。
访问函数
bool | wordWrap() const |
void | setWordWrap(bool on) |
成员函数文档
[显式]
QTreeView::QTreeView(QWidget *parent = nullptr)
使用 parent 构造树视图以表示模型的数据。使用 setModel() 设置模型。
另请参阅 QAbstractItemModel。
[虚 noexcept]
QTreeView::~QTreeView()
销毁树视图。
[覆盖虚受保护]
void QTreeView::changeEvent(QEvent *event)
重实现了:QFrame::changeEvent(QEvent *ev)。
[slot]
void QTreeView::collapse(const QModelIndex &index)
折叠由 index 指定的模型项。
另请参阅collapsed。
[slot]
void QTreeView::collapseAll()
折叠所有展开的项。
另请参阅expandAll、expand、collapse 和 setExpanded。
[signal]
void QTreeView::collapsed(const QModelIndex &index)
当指定由 index 的项被折叠时,发出此信号。
int QTreeView::columnAt(int x) const
返回包含给定 x 坐标的树视图中列的列。
[protected slot]
void QTreeView::columnCountChanged(int oldCount, int newCount)
通知树视图列数已从 oldCount 更改为 newCount。
[protected slot]
void QTreeView::columnMoved()
每次移动列都会调用此槽函数。
[protected slot]
void QTreeView::columnResized(int column, int oldSize, int newSize)
当 column 的大小在标题中更改时,将调用此函数。 oldSize 和 newSize 分别提供了像素单位的先前大小和新大小。
另请参阅setColumnWidth。
int QTreeView::columnViewportPosition(int column) const
返回 column 在视口中的水平位置。
int QTreeView::columnWidth(int column) const
返回 column 的宽度。
另请参阅resizeColumnToContents 和 setColumnWidth。
[override virtual protected]
void QTreeView::currentChanged(const QModelIndex ¤t, const QModelIndex &previous)
重实现了: QAbstractItemView::currentChanged(const QModelIndex ¤t, const QModelIndex &previous).
[override virtual]
void QTreeView::dataChanged(const QModelIndex &topLeft, const QModelIndex &bottomRight, const QList<int> &roles = QList<int>())
重实现了: QAbstractItemView::dataChanged(const QModelIndex &topLeft, const QModelIndex &bottomRight, const QList<int> &roles).
[覆盖虚保护]
void QTreeView::dragMoveEvent(QDragMoveEvent *event)
重新实现:QAbstractItemView::dragMoveEvent(QDragMoveEvent *event).
[虚保护]
void QTreeView::drawBranches(QPainter *painter, const QRect &rect, const QModelIndex &index) const
使用给定的painter,在模型项index所在的同一行中绘制树视图的分支。分支绘制在由rect指定的矩形内。
[虚保护]
void QTreeView::drawRow(QPainter *painter, const QStyleOptionViewItem &option, const QModelIndex &index) const
使用给定的painter绘制包含模型项index的树视图中的行。option控制如何显示项目。
另请参阅 setAlternatingRowColors().
[保护]
void QTreeView::drawTree(QPainter *painter, const QRegion ®ion) const
使用指定的painter绘制给定region相交的树的部分。
另请参阅 paintEvent().
[槽]
void QTreeView::expand(const QModelIndex &index)
展开指定由index指定的模型项。
另请参阅 expanded().
[槽]
void QTreeView::expandAll()
展开所有可展开的项目。
注意: 此函数将不会尝试获取更多数据。
警告: 如果模型包含大量项目,此函数将需要一些时间才能执行。
另请参阅 collapseAll(),expand(),collapse()和setExpanded().
[槽]
void QTreeView::expandRecursively(const QModelIndex &index, int depth = -1)
展开给定index处的项及其所有子项到指定的depth。相对于给定index的depth是相对的。如果depth为-1,将展开所有子项,如果depth为0,则仅展开给定的index。
注意: 此函数将不会尝试获取更多数据。
警告: 如果模型包含大量项目,此函数将需要一些时间才能执行。
另请参阅 expandAll().
[slot]
void QTreeView::expandToDepth(int depth)
将所有可展开的项目扩展到指定的 depth。
注意: 此函数将不会尝试获取更多数据。
请参阅expandAll(展开全部),collapseAll(全部折叠),expand(展开),collapse(折叠)和setExpanded(设置展开状态)。
[signal]
void QTreeView::expanded(const QModelIndex &index)
当 index 指定的项被展开时,此信号被发出。
请参阅setExpanded(设置展开状态)。
QHeaderView *QTreeView::header() const
返回树视图的标题。
请参阅setHeader(设置标题)和QAbstractItemModel::headerData(获取标题数据)。
[slot]
void QTreeView::hideColumn(int column)
隐藏给定的 column。
注意:这个函数应该在模型初始化之后调用,因为视图需要知道列的数量才能隐藏 column。
请参阅showColumn(显示列)和setColumnHidden(设置列是否隐藏)。
[override virtual protected]
int QTreeView::horizontalOffset() const
重新实现:QAbstractItemView::horizontalOffset() const。
返回树视图中项目的水平偏移量。
请注意,树视图使用水平表头部分的位置来确定视图中的列的位置。
请参阅verticalOffset(垂直偏移量)。
QModelIndex QTreeView::indexAbove(const QModelIndex &index) const
返回位于 index 上方的项的模型索引。
[override virtual]
QModelIndex QTreeView::indexAt(const QPoint &point) const
重新实现:QAbstractItemView::indexAt(const QPoint &point) const。
QModelIndex QTreeView::indexBelow(const QModelIndex &index) const
返回位于 index 下方的项的模型索引。
[protected]
int QTreeView::indexRowSizeHint(const QModelIndex &index) const
返回由 index 指示的行的尺寸提示。
请参阅sizeHintForColumn(列尺寸提示)和uniformRowHeights(统一行高)。
布尔值 QTreeView::isColumnHidden(int column) const
如果列 column 被隐藏,则返回 true
,否则返回 false
。
另请参阅hideColumn() 和 isRowHidden().
布尔值 QTreeView::isExpanded(const QModelIndex &index) const
如果模型项 index 被展开,则返回 true
,否则返回 false。
另请参阅expand(),expanded() 和 setExpanded().
布尔值 QTreeView::isFirstColumnSpanned(int row, const QModelIndex &parent) const
如果给定 row 的 parent 中第一列的项目跨越所有列,则返回 true
,否则返回 false
。
另请参阅setFirstColumnSpanned().
[重写虚拟受保护]
布尔值 QTreeView::isIndexHidden(const QModelIndex &index) const
重新实现: QAbstractItemView::isIndexHidden(const QModelIndex &index) const.
布尔值 QTreeView::isRowHidden(int row, const QModelIndex &parent) const
如果给定 parent 的 row 的项目被隐藏,则返回 true
,否则返回 false
。
另请参阅setRowHidden() 和 isColumnHidden().
[重写虚拟受保护]
void QTreeView::keyPressEvent(QKeyEvent *event)
重新实现: QAbstractItemView::keyPressEvent(QKeyEvent *event).
[重写虚拟]
void QTreeView::keyboardSearch(const QString &search)
重新实现: QAbstractItemView::keyboardSearch(const QString &search).
[重写虚拟受保护]
void QTreeView::mouseDoubleClickEvent(QMouseEvent *event)
重新实现: QAbstractItemView::mouseDoubleClickEvent(QMouseEvent *event).
[重写虚拟受保护]
void QTreeView::mouseMoveEvent(QMouseEvent *event)
重新实现: QAbstractItemView::mouseMoveEvent(QMouseEvent *event).
[重写虚拟受保护]
void QTreeView::mousePressEvent(QMouseEvent *event)
重新实现: QAbstractItemView::mousePressEvent(QMouseEvent *event).
[覆盖虚拟保护]
void QTreeView::mouseReleaseEvent(QMouseEvent *event)
重实现: QAbstractItemView::mouseReleaseEvent(QMouseEvent *event).
[覆盖虚拟保护]
QModelIndex QTreeView::moveCursor(QAbstractItemView::CursorAction cursorAction, Qt::KeyboardModifiers modifiers)
重实现: QAbstractItemView::moveCursor(QAbstractItemView::CursorAction cursorAction, Qt::KeyboardModifiers modifiers).
使用按钮modifiers提供的信息,按照cursorAction描述的方式移动光标。
[覆盖虚拟保护]
void QTreeView::paintEvent(QPaintEvent *event)
重实现: QAbstractScrollArea::paintEvent(QPaintEvent *event).
[覆盖虚拟]
void QTreeView::reset()
重实现: QAbstractItemView::reset().
[槽函数]
void QTreeView::resizeColumnToContents(int column)
将列column调整为其内容的大小。
另请参阅columnWidth(),setColumnWidth(),sizeHintForColumn(),以及QHeaderView::resizeContentsPrecision().
[受保护]
int QTreeView::rowHeight(const QModelIndex &index) const
返回给定index指示的行的长度。
另请参阅indexRowSizeHint().
[覆盖虚拟保护]
void QTreeView::rowsAboutToBeRemoved(const QModelIndex &parent, int start, int end)
重实现: QAbstractItemView::rowsAboutToBeRemoved(const QModelIndex &parent, int start, int end).
通知视图从parent模型项中即将移除始自start行至end行。
[覆盖虚拟保护]
void QTreeView::rowsInserted(const QModelIndex &parent, int start, int end)
重实现: QAbstractItemView::rowsInserted(const QModelIndex &parent, int start, int end).
通知视图已将自start行至end行的行插入到parent模型项中。
[受保护槽函数]
void QTreeView::rowsRemoved(const QModelIndex &parent, int start, int end)
通知视图,从起始行到结束行(含)已从给定的父项模型中删除。
[重写虚受保护]
void QTreeView::scrollContentsBy(int dx, int dy)
重写:
滚动树视图的内容,移动量为(dx, dy)。
[重写虚保护]
void QTreeView::scrollTo(const QModelIndex &index, QAbstractItemView::ScrollHint hint = EnsureVisible)
重写:
滚动树视图内容,直到指定的模型项index可见。参数hint更精确地指定了操作后项的位置。如果模型项的任何父项已折叠,它们将被展开以确保模型项可见。
[重写虚保护]
void QTreeView::selectAll()
重写:
[重写虚保护]
QModelIndexList QTreeView::selectedIndexes() const
重写:
[重写虚保护]
void QTreeView::selectionChanged(const QItemSelection &selected, const QItemSelection &deselected)
重写:
void QTreeView::setColumnHidden(int column, bool hide)
如果hide为真,column被隐藏,否则显示column。
另请参阅isColumnHidden()、hideColumn()和setRowHidden()。
void QTreeView::setColumnWidth(int column, int width)
将指定column的宽度设置为指定的width。
另请参阅columnWidth()和resizeColumnToContents()。
void QTreeView::setExpanded(const QModelIndex &index, bool expanded)
根据expanded的值将引用index的项设置为折叠或展开。
另请参阅expanded()、expand()和isExpanded()。
void QTreeView::setFirstColumnSpanned(int row, const QModelIndex &parent, bool span)
如果span为true,则给定parent的行中的第一列的项将被设置为跨所有列,否则将在该row上显示所有项。
另请参阅isFirstColumnSpanned。
void QTreeView::setHeader(QHeaderView *header)
将树视图的标题设置为给定的header。
视图将获取给定header的所有权,并在设置新的标题时删除它。
另请参阅QAbstractItemModel::headerData。
[重写虚函数]
void QTreeView::setModel(QAbstractItemModel *model)
重新实现了: QAbstractItemView::setModel(QAbstractItemModel *model)。
[重写虚函数]
void QTreeView::setRootIndex(const QModelIndex &index)
重新实现了: QAbstractItemView::setRootIndex(const QModelIndex &index)。
void QTreeView::setRowHidden(int row, const QModelIndex &parent, bool hide)
如果hide为true,则给定parent的row将被隐藏,否则将显示该row。
另请参阅isRowHidden和setColumnHidden。
[重写虚保护函数]
void QTreeView::setSelection(const QRect &rect, QItemSelectionModel::SelectionFlags command)
重新实现了: QAbstractItemView::setSelection(const QRect &rect, QItemSelectionModel::SelectionFlags flags)。
将选择command应用于矩形内的项或受矩形影响的项。
另请参阅selectionCommand。
[重写虚函数]
void QTreeView::setSelectionModel(QItemSelectionModel *selectionModel)
重新实现了: QAbstractItemView::setSelectionModel(QItemSelectionModel *selectionModel)。
void QTreeView::setTreePosition(int index)
这指定树结构应放置在逻辑索引index处。如果设置为-1,则树将始终跟随可视索引0。
另请参阅treePosition()、QHeaderView::swapSections和QHeaderView::moveSection。
[槽函数]
void QTreeView::showColumn(int column)
在树视图中显示给定的column。
另请参阅hideColumn和setColumnHidden。
[重载虚受保护]
int QTreeView::sizeHintForColumn(int column) const
重新实现了: QAbstractItemView::sizeHintForColumn(int column) const.
返回列的宽度提示大小,如果没有模型则返回 -1。
如果您需要将给定列的宽度设置为固定值,请在视图的标题上调用 QHeaderView::resizeSection()。
如果您在子类中重新实现了此函数,请注意,您返回的值仅在使用 resizeColumnToContents() 时使用。在这种情况下,如果视图的标题或项目代理需要更大的列宽,则将使用该宽度。
另请参阅 QWidget::sizeHint,header(),以及 QHeaderView::resizeContentsPrecision。
[槽]
void QTreeView::sortByColumn(int column, Qt::SortOrder order)
通过给定的 column 和 order 对模型进行排序。
column 可能是 -1,在这种情况下不会显示排序指示器,并且模型将返回其自然顺序。请注意,并非所有模型都支持此功能,甚至可能在这种情况下崩溃。
另请参阅 sortingEnabled。
[重载虚受保护]
void QTreeView::timerEvent(QTimerEvent *event)
重新实现了: QAbstractItemView::timerEvent(QTimerEvent *event)。
int QTreeView::treePosition() const
返回树设置的逻辑索引。如果返回值是 -1,则树放置在视觉索引 0。
另请参阅 setTreePosition。
[重载虚受保护]
void QTreeView::updateGeometries()
重新实现了: QAbstractItemView::updateGeometries。
[重载虚受保护]
int QTreeView::verticalOffset() const
重新实现了: QAbstractItemView::verticalOffset() const。
返回树视图中项目的垂直偏移。
另请参阅 horizontalOffset。
[重载虚受保护]
bool QTreeView::viewportEvent(QEvent *event)
重新实现了: QAbstractItemView::viewportEvent(QEvent *event)。
[重载虚受保护]
QSize QTreeView::viewportSizeHint() const
重新实现了: QAbstractItemView::viewportSizeHint() const。
[重写虚拟]
QRect QTreeView::visualRect(const QModelIndex &index) const
重实现:QAbstractItemView::visualRect(const QModelIndex &index) const.
返回位于index处的项目的矩形。如果索引不可见或被显式隐藏,则返回的矩形无效。
[重写虚拟受保护]
QRegion QTreeView::visualRegionForSelection(const QItemSelection &selection) const
重实现:QAbstractItemView::visualRegionForSelection(const QItemSelection &selection) const.
返回给定selection中项目在视口中的矩形。
自4.7以来,返回的区域仅包含与视口相交(或包含在视口中)的矩形。
© 2024 The Qt Company Ltd. 包含在本内的文档贡献各自的版权所有。本处的文档是根据自由软件基金会发布的<_NONNULL(!( Cobrand )) GNU自由文档许可协议版本1.3许可。