QTreeView 类

QTreeView 类提供了一个树视图的默认模型/视图实现。 更多...

头文件 #include <QTreeView>
CMakefind_package(Qt6 REQUIRED COMPONENTS Widgets)
target_link_libraries(mytarget PRIVATE Qt6::Widgets)
qmakeQT += widgets
继承自 QAbstractItemView
继承

QHelpContentWidgetQTreeWidget

属性

公开函数

QTreeView(QWidget *parent = nullptr)
virtual~QTreeView()
boolallColumnsShowFocus() const
intautoExpandDelay() const
intcolumnAt(int x) const
intcolumnViewportPosition(int column) const
intcolumnWidth(int column) const
boolexpandsOnDoubleClick() const
QHeaderView *header() const
intindentation() const
QModelIndexindexAbove(const QModelIndex &index) const
QModelIndexindexBelow(const QModelIndex &index) const
boolisAnimated() const
boolisColumnHidden(int column) const
boolisExpanded(const QModelIndex &index) const
boolisFirstColumnSpanned(int row, const QModelIndex &parent) const
boolisHeaderHidden() const
boolisRowHidden(int row, const QModelIndex &parent) const
boolisSortingEnabled() const
boolitemsExpandable() const
voidresetIndentation()
boolrootIsDecorated() const
voidsetAllColumnsShowFocus(bool enable)
voidsetAnimated(bool enable)
voidsetAutoExpandDelay(int delay)
voidsetColumnHidden(int column, bool hide)
voidsetColumnWidth(int column, int width)
voidsetExpanded(const QModelIndex &index, bool expanded)
voidsetExpandsOnDoubleClick(bool enable)
voidsetFirstColumnSpanned(int row, const QModelIndex &parent, bool span)
voidsetHeader(QHeaderView *header)
voidsetHeaderHidden(bool hide)
voidsetIndentation(int i)
voidsetItemsExpandable(bool enable)
voidsetRootIsDecorated(bool show)
voidsetRowHidden(int row, const QModelIndex &parent, bool hide)
voidsetSortingEnabled(bool enable)
voidsetTreePosition(int index)
voidsetUniformRowHeights(bool uniform)
voidsetWordWrap(bool on)
inttreePosition() const
booluniformRowHeights() const
boolwordWrap() const

重写的公共函数

virtual voiddataChanged(const QModelIndex &topLeft, const QModelIndex &bottomRight, const QList<int> &roles = QList<int>()) override
virtual QModelIndexindexAt(const QPoint &point) const override
virtual voidkeyboardSearch(const QString &search) override
virtual voidreset() override
virtual voidscrollTo(const QModelIndex &index, QAbstractItemView::ScrollHint hint = EnsureVisible) override
virtual voidselectAll() override
virtual voidsetModel(QAbstractItemModel *model) override
virtual voidsetRootIndex(const QModelIndex &index) override
virtual voidsetSelectionModel(QItemSelectionModel *selectionModel) override
virtual QRectvisualRect(const QModelIndex &index) const override

公共槽

voidcollapse(const QModelIndex &index)
voidcollapseAll()
voidexpand(const QModelIndex &index)
voidexpandAll()
voidexpandRecursively(const QModelIndex &index, int depth = -1)
voidexpandToDepth(int depth)
voidhideColumn(int column)
voidresizeColumnToContents(int column)
voidshowColumn(int column)
voidsortByColumn(int column, Qt::SortOrder order)

信号

voidcollapsed(const QModelIndex &index)
voidexpanded(const QModelIndex &index)

受保护函数

virtual voiddrawBranches(QPainter *painter, const QRect &rect, const QModelIndex &index) const
virtual voiddrawRow(QPainter *painter, const QStyleOptionViewItem &option, const QModelIndex &index) const
voiddrawTree(QPainter *painter, const QRegion &region) const
intindexRowSizeHint(const QModelIndex &index) const
introwHeight(const QModelIndex &index) const

重写的受保护函数

virtual voidchangeEvent(QEvent *event) override
virtual voidcurrentChanged(const QModelIndex &current, const QModelIndex &previous) override
virtual voiddragMoveEvent(QDragMoveEvent *event) override
virtual inthorizontalOffset() const override
virtual boolisIndexHidden(const QModelIndex &index) const override
virtual voidkeyPressEvent(QKeyEvent *event) override
virtual voidmouseDoubleClickEvent(QMouseEvent *event) override
virtual voidmouseMoveEvent(QMouseEvent *event) override
virtual voidmousePressEvent(QMouseEvent *event) override
virtual voidmouseReleaseEvent(QMouseEvent *event) override
virtual QModelIndexmoveCursor(QAbstractItemView::CursorAction cursorAction, Qt::KeyboardModifiers modifiers) override
virtual voidpaintEvent(QPaintEvent *event) override
virtual voidrowsAboutToBeRemoved(const QModelIndex &parent, int start, int end) override
virtual voidrowsInserted(const QModelIndex &parent, int start, int end) override
virtual voidscrollContentsBy(int dx, int dy) override
virtual QModelIndexListselectedIndexes() const override
virtual voidselectionChanged(const QItemSelection &selected, const QItemSelection &deselected) override
virtual voidsetSelection(const QRect &rect, QItemSelectionModel::SelectionFlags command) override
virtual intsizeHintForColumn(int column) const override
virtual voidtimerEvent(QTimerEvent *event) override
virtual voidupdateGeometries() override
virtual intverticalOffset() const override
virtual boolviewportEvent(QEvent *event) override
virtual QSizeviewportSizeHint() const override
virtual QRegionvisualRegionForSelection(const QItemSelection &selection) const override

受保护槽函数

voidcolumnCountChanged(int oldCount, int newCount)
voidcolumnMoved()
voidcolumnResized(int column, int oldSize, int newSize)
voidrowsRemoved(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,则此属性将覆盖最后部分在标题上的调整大小模式。

默认情况下,除了第一列之外,树视图中的所有列都可以移动。要禁用这些列的移动,请使用QHeaderViewsetSectionsMovable()函数。有关排列部分更多信息的更多信息,请参阅移动标题部分

快捷键绑定

QTreeView支持一组键绑定,使用户能够在视图中导航并与项的内容交互

操作
向上将光标移动到上一行同一列的项。如果当前项的父项没有更多的行可以进行导航,则光标移动到父项之前同级中的相关项。
向下将光标移动到下一行同一列的项。如果当前项的父项没有更多的行可以进行导航,则光标移动到父项之后同级中的相关项。
向左通过折叠分支来隐藏当前项的子项(如果存在)。
减号与向左相同。
向右通过展开分支来显示当前项的子项(如果存在)。
加号与向右相同。
星号展开当前项及其所有子项(如果存在)。
向上翻页将光标向上移动一页。
向下翻页将光标向下移动一页。
首页将光标移动到模型中最顶层项的第一行同一列的项。
末页将光标移动到模型中最底层项的最后行同一列的项。
F2在可编辑的模型中,这会打开当前项进行编辑。可以使用Escape键取消编辑过程并撤销对显示的数据所做的任何更改。

提高性能

可以根据视图处理的数据给视图提供提示,以提高它显示大量项的性能。对于打算显示齐等高度的项的视图,可以将uniformRowHeights属性设置为true的一种方法。

另请参阅 QListViewQTreeWidget视图类QAbstractItemModelQAbstractItemView

属性文档

allColumnsShowFocus : bool

此属性表示是否使用所有列显示项目键盘焦点

如果此属性为 true,则所有列将显示焦点;否则,只显示一列焦点。

默认为 false。

访问函数

boolallColumnsShowFocus() const
voidsetAllColumnsShowFocus(bool enable)

animated : bool

此属性表示是否启用动画

如果此属性为 true,则树视图将动画展开和折叠分支。如果此属性为 false,则树视图将立即展开或折叠分支而不会显示动画。

默认情况下,此属性为 false

访问函数

boolisAnimated() const
voidsetAnimated(bool enable)

autoExpandDelay : int

此属性表示在拖放操作期间,在树中打开项目之前的延迟时间

此属性表示用户必须在一个节点上等待多长时间(以毫秒为单位),那个节点才会自动打开或关闭。如果时间设置为小于 0,则不会激活。

默认情况下,此属性的值为 -1,表示自动展开已禁用。

访问函数

intautoExpandDelay() const
voidsetAutoExpandDelay(int delay)

expandsOnDoubleClick : bool

此属性表示是否可以通过双击来展开项目

此属性表示用户是否可以通过双击来展开和折叠项目。默认值是 true。

访问函数

boolexpandsOnDoubleClick() const
voidsetExpandsOnDoubleClick(bool enable)

另请参阅 itemsExpandable

headerHidden : bool

此属性表示是否显示表头

如果此属性为 true,则不显示表头;否则显示。默认值为 false。

访问函数

boolisHeaderHidden() const
voidsetHeaderHidden(bool hide)

另请参阅 header().

indentation : int

树视图中项的缩进

此属性表示树视图中每级的项目缩进(以像素为单位)。对于顶层项,缩进指定从视口边缘到第一列项的水平距离;对于子项,它指定它们与父项的缩进。

默认情况下,此属性的值取决于样式。因此,当样式更改时,此属性会从中更新。调用 setIndentation() 会停止更新,调用 resetIndentation() 将恢复默认行为。

访问函数

intindentation() const
voidsetIndentation(int i)
voidresetIndentation()

itemsExpandable : bool

此属性表示项目是否可由用户展开

此属性表示用户是否可以交互式地展开和折叠项目。

默认情况下,此属性为 true

访问函数

boolitemsExpandable() const
voidsetItemsExpandable(bool enable)

rootIsDecorated : bool

此属性表示是否显示顶层项目的展开和收起控件

带子项的项通常带有展开和收起的控件,允许显示或隐藏其子项。如果此属性为 false,则不显示顶层项的控件。这可以用来让单级树结构看起来像简单的事项列表。

默认情况下,此属性为 true

访问函数

boolrootIsDecorated() const
voidsetRootIsDecorated(bool show)

sortingEnabled : bool

此属性表示是否启用了排序

如果此属性为 true,则树启用排序;如果属性为 false,则不启用排序。默认值是 false。

注意: 为了避免性能问题,建议在将项目插入树之后才启用排序。或者,您也可以先将项目插入列表,然后再将项目插入树。

访问函数

boolisSortingEnabled() const
voidsetSortingEnabled(bool enable)

另请参阅 sortByColumn

uniformRowHeights : bool

此属性表示树视图中所有项的高度是否相同

只有当保证视图中所有项高度相同时,才应将此属性设置為 true。这可以启用视图进行某些优化。

高度从视图中的第一个项获取。当该项的数据改变时,它会更新。

注意: 如果编辑器大小提示大于单元大小提示,则将使用编辑器的大小提示。

默认情况下,此属性为 false

访问函数

booluniformRowHeights() const
voidsetUniformRowHeights(bool uniform)

wordWrap : bool

此属性表示项文本的换行策略

如果此属性为 true,则项文本将在需要的位置进行单词拆分;否则不会进行拆分。此属性默认为 false

注意,即使启用了换行,单元格也不会扩展以适应所有文本。将根据当前的 textElideMode 插入省略号。

访问函数

boolwordWrap() const
voidsetWordWrap(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()

折叠所有展开的项。

另请参阅expandAllexpandcollapsesetExpanded

[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 的大小在标题中更改时,将调用此函数。 oldSizenewSize 分别提供了像素单位的先前大小和新大小。

另请参阅setColumnWidth

int QTreeView::columnViewportPosition(int column) const

返回 column 在视口中的水平位置。

int QTreeView::columnWidth(int column) const

返回 column 的宽度。

另请参阅resizeColumnToContentssetColumnWidth

[override virtual protected] void QTreeView::currentChanged(const QModelIndex &current, const QModelIndex &previous)

重实现了: QAbstractItemView::currentChanged(const QModelIndex &current, 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 &region) 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。相对于给定indexdepth是相对的。如果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(设置展开状态)。

返回树视图的标题。

请参阅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

如果给定 rowparent 中第一列的项目跨越所有列,则返回 true,否则返回 false

另请参阅setFirstColumnSpanned().

[重写虚拟受保护] 布尔值 QTreeView::isIndexHidden(const QModelIndex &index) const

重新实现: QAbstractItemView::isIndexHidden(const QModelIndex &index) const.

布尔值 QTreeView::isRowHidden(int row, const QModelIndex &parent) const

如果给定 parentrow 的项目被隐藏,则返回 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,则给定parentrow将被隐藏,否则将显示该row

另请参阅isRowHiddensetColumnHidden

[重写虚保护函数] 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::swapSectionsQHeaderView::moveSection

[槽函数] void QTreeView::showColumn(int column)

在树视图中显示给定的column

另请参阅hideColumnsetColumnHidden

[重载虚受保护] int QTreeView::sizeHintForColumn(int column) const

重新实现了: QAbstractItemView::sizeHintForColumn(int column) const.

返回列的宽度提示大小,如果没有模型则返回 -1。

如果您需要将给定列的宽度设置为固定值,请在视图的标题上调用 QHeaderView::resizeSection()。

如果您在子类中重新实现了此函数,请注意,您返回的值仅在使用 resizeColumnToContents() 时使用。在这种情况下,如果视图的标题或项目代理需要更大的列宽,则将使用该宽度。

另请参阅 QWidget::sizeHintheader(),以及 QHeaderView::resizeContentsPrecision

[槽] void QTreeView::sortByColumn(int column, Qt::SortOrder order)

通过给定的 columnorder 对模型进行排序。

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许可。