QColumnView Class

QColumnView 类提供了列视图的模型/视图实现。更多

Header: #include <QColumnView>
CMake: find_package(Qt6 REQUIRED COMPONENTS Widgets)
target_link_libraries(mytarget PRIVATE Qt6::Widgets)
qmake: QT += widgets
继承: QAbstractItemView

属性

公共函数

QColumnView(QWidget *parent = nullptr)
virtual ~QColumnView()
QList<int> columnWidths() const
QWidget *previewWidget() const
bool resizeGripsVisible() const
void setColumnWidths(const QList<int> &list)
void setPreviewWidget(QWidget *widget)
void setResizeGripsVisible(bool visible)

重新实现的公共函数

virtual QModelIndex indexAt(const QPoint &point) const 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 *newSelectionModel) override
virtual QSize sizeHint() const override
virtual QRect visualRect(const QModelIndex &index) const override

信号

void updatePreviewWidget(const QModelIndex &index)

受保护函数

virtual QAbstractItemView *createColumn(const QModelIndex &index)
void initializeColumn(QAbstractItemView *column) const

重新实现的受保护函数

virtual void currentChanged(const QModelIndex &current, const QModelIndex &previous) override
virtual int horizontalOffset() const override
virtual bool isIndexHidden(const QModelIndex &index) const override
virtual QModelIndex moveCursor(QAbstractItemView::CursorAction cursorAction, Qt::KeyboardModifiers modifiers) override
virtual void resizeEvent(QResizeEvent *event) override
virtual void rowsInserted(const QModelIndex &parent, int start, int end) override
virtual void scrollContentsBy(int dx, int dy) override
virtual void setSelection(const QRect &rect, QItemSelectionModel::SelectionFlags command) override
virtual int verticalOffset() const override
virtual QRegion visualRegionForSelection(const QItemSelection &selection) const override

详细说明

QColumnView 在多个 QListView 中显示一个模型,树中的每个层次都有一个 QListView。这有时被称为层叠列表。

QColumnView类是模型/视图类之一,是 Qt模型/视图框架的一部分。

QColumnView 实现了由QAbstractItemView 类定义的接口,允许它显示由QAbstractItemModel 类派生的模型提供的数据。

另请参阅 模型/视图编程

属性文档

resizeGripsVisible : bool

该属性用于指定是否调整列表视图的大小。

默认情况下,visible 设置为 true

访问功能:

bool resizeGripsVisible() const
void setResizeGripsVisible(bool visible)

另请参阅 setRootIndex().

成员函数文档

[explicit] QColumnView::QColumnView(QWidget *parent = nullptr)

parent 构建列视图,以表示模型数据。使用setModel() 设置模型。

另请参阅 QAbstractItemModel

[virtual noexcept] QColumnView::~QColumnView()

销毁列视图。

QList<int> QColumnView::columnWidths() const

返回该视图中所有列的宽度列表。

另请参阅 setColumnWidths()。

[virtual protected] QAbstractItemView *QColumnView::createColumn(const QModelIndex &index)

index 是将分配给视图的根索引。

QColumnView 将自动获得 widget 的所有权。

另请参阅 setPreviewWidget()。

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

重实现:QAbstractItemView::currentChanged(const QModelIndex &current, const QModelIndex &previous).

[override virtual protected] int QColumnView::horizontalOffset() const

重实现:QAbstractItemView::horizontalOffset() const.

[override virtual] QModelIndex QColumnView::indexAt(const QPoint &point) const

重实现:QAbstractItemView::indexAt(const QPoint &point) const.

[protected] void QColumnView::initializeColumn(QAbstractItemView *column) const

复制列视图的行为和选项,并将其应用于column ,如iconSize(),textElideMode() 和alternatingRowColors().这在重新实现createColumn() 时非常有用。

另请参阅 createColumn()。

[override virtual protected] bool QColumnView::isIndexHidden(const QModelIndex &index) const

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

[override virtual protected] QModelIndex QColumnView::moveCursor(QAbstractItemView::CursorAction cursorAction, Qt::KeyboardModifiers modifiers)

重实现:QAbstractItemView::moveCursor(QAbstractItemView::CursorAction cursorAction, Qt::KeyboardModifiers modifiers)。

向左移动应指向父索引 向右移动应指向子索引,如果没有子索引,则向下移动

QWidget *QColumnView::previewWidget() const

返回预览部件,如果没有则返回nullptr

另请参阅 setPreviewWidget() 和updatePreviewWidget()。

[override virtual protected] void QColumnView::resizeEvent(QResizeEvent *event)

重实现:QAbstractItemView::resizeEvent(QResizeEvent *event).

[override virtual protected] void QColumnView::rowsInserted(const QModelIndex &parent, int start, int end)

重实现:QAbstractItemView::rowsInserted(const QModelIndex &parent, int start, int end)。

[override virtual protected] void QColumnView::scrollContentsBy(int dx, int dy)

重实现:QAbstractScrollArea::scrollContentsBy(int dx, int dy)。

[override virtual] void QColumnView::scrollTo(const QModelIndex &index, QAbstractItemView::ScrollHint hint = EnsureVisible)

重实现:QAbstractItemView::scrollTo(const QModelIndex &index, QAbstractItemView::ScrollHint hint)。

[override virtual] void QColumnView::selectAll()

重新实现:QAbstractItemView::selectAll().

void QColumnView::setColumnWidths(const QList<int> &list)

将列宽设置为list 中给出的值。创建列时将保留并使用列表中的多余值。

如果列表中的值过少,则不会修改其余列的宽度。

另请参阅 columnWidths() 和createColumn()。

[override virtual] void QColumnView::setModel(QAbstractItemModel *model)

重实现:QAbstractItemView::setModel(QAbstractItemModel *model).

void QColumnView::setPreviewWidget(QWidget *widget)

设置预览widget

widget 将成为列视图的子控件,并将在删除列区域或设置新控件时销毁。

另请参阅 previewWidget() 和updatePreviewWidget()。

[override virtual] void QColumnView::setRootIndex(const QModelIndex &index)

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

[override virtual protected] void QColumnView::setSelection(const QRect &rect, QItemSelectionModel::SelectionFlags command)

重实现:QAbstractItemView::setSelection(const QRect &rect, QItemSelectionModel::SelectionFlags flags)。

[override virtual] void QColumnView::setSelectionModel(QItemSelectionModel *newSelectionModel)

重实现:QAbstractItemView::setSelectionModel(QItemSelectionModel *selectionModel).

[override virtual] QSize QColumnView::sizeHint() const

重实现:QAbstractScrollArea::sizeHint() const.

[signal] void QColumnView::updatePreviewWidget(const QModelIndex &index)

当预览部件需要更新以提供丰富的信息时,就会发出该信号。index

另请参见 previewWidget().

[override virtual protected] int QColumnView::verticalOffset() const

重实现:QAbstractItemView::verticalOffset() const.

[override virtual] QRect QColumnView::visualRect(const QModelIndex &index) const

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

[override virtual protected] QRegion QColumnView::visualRegionForSelection(const QItemSelection &selection) const

重实现:QAbstractItemView::visualRegionForSelection(const QItemSelection &selection) const.

© 2025 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.