Spec-Zone.ru › Qt 5.11

Класс QListView

Класс QListView предоставляет вид списка или значков для модели. Подробнее...

Заголовок: #include <QListView>
qmake: QT += widgets
Наследуется от: QAbstractItemView
Наследует:

QListWidget и QUndoView

  • Список всех членов, включая унаследованные

Открытые типы

перечисление Flow { СлеваНаправо, СверхуВниз }
перечисление LayoutMode { ОдноПроходное, Партированное }
перечисление Movement { Статическое, Свободное, Привязка }
перечисление ResizeMode { Фиксированное, Настройка }
перечисление ViewMode { РежимСписок, РежимЗначки }

Свойства

  • batchSize : int
  • flow : Flow
  • gridSize : QSize
  • isWrapping : bool
  • layoutMode : LayoutMode
  • modelColumn : int
  • movement : Movement
  • resizeMode : ResizeMode
  • selectionRectVisible : bool
  • spacing : int
  • uniformItemSizes : bool
  • viewMode : ViewMode
  • wordWrap : bool
  • 16 свойств унаследовано от QAbstractItemView
  • 3 свойства унаследовано от QAbstractScrollArea
  • 6 свойств унаследовано от QFrame
  • 59 свойств унаследовано от QWidget
  • 1 свойство унаследовано от QObject

Общедоступные функции

QListView(QWidget *parent = nullptr)
virtual ~QListView()
int batchSize() const
void clearPropertyFlags()
QListView::Flow flow() const
QSize gridSize() const
bool isRowHidden(int row) const
bool isSelectionRectVisible() const
bool isWrapping() const
QListView::LayoutMode layoutMode() const
int modelColumn() const
QListView::Movement movement() const
QListView::ResizeMode resizeMode() const
void setBatchSize(int batchSize)
void setFlow(QListView::Flow flow)
void setGridSize(const QSize &size)
void setLayoutMode(QListView::LayoutMode mode)
void setModelColumn(int column)
void setMovement(QListView::Movement movement)
void setResizeMode(QListView::ResizeMode mode)
void setRowHidden(int row, bool hide)
void setSelectionRectVisible(bool show)
void setSpacing(int space)
void setUniformItemSizes(bool enable)
void setViewMode(QListView::ViewMode mode)
void setWordWrap(bool on)
void setWrapping(bool enable)
int spacing() const
bool uniformItemSizes() const
QListView::ViewMode viewMode() const
bool wordWrap() const

Переопределённые общедоступные функции

virtual QModelIndex indexAt(const QPoint &p) const override
virtual void scrollTo(const QModelIndex &index, QAbstractItemView::ScrollHint hint = EnsureVisible) override
virtual QRect visualRect(const QModelIndex &index) const override
  • 60 общедоступных функций унаследовано от QAbstractItemView
  • 20 общедоступных функций унаследовано от QAbstractScrollArea
  • 14 общедоступных функций унаследовано от QFrame
  • 214 общедоступных функций унаследовано от QWidget
  • 34 общедоступных функций унаследовано от QObject
  • 14 общедоступных функций унаследовано от QPaintDevice

Сигналы

void indexesMoved(const QModelIndexList &indexes)
  • 7 сигналов унаследовано от QAbstractItemView
  • 3 сигналов унаследовано от QWidget
  • 2 сигналов унаследовано от QObject

Защищённые функции

QRect rectForIndex(const QModelIndex &index) const
void setPositionForIndex(const QPoint &position, const QModelIndex &index)

Реализованные защищенные функции

virtual void currentChanged(const QModelIndex &current, const QModelIndex &previous) override
virtual void dataChanged(const QModelIndex &topLeft, const QModelIndex &bottomRight, const QVector<int> &roles = QVector<int>()) override
virtual void dragLeaveEvent(QDragLeaveEvent *e) override
virtual void dragMoveEvent(QDragMoveEvent *e) override
virtual void dropEvent(QDropEvent *e) override
virtual bool event(QEvent *e) override
virtual int horizontalOffset() const override
virtual bool isIndexHidden(const QModelIndex &index) const override
virtual void mouseMoveEvent(QMouseEvent *e) override
virtual void mouseReleaseEvent(QMouseEvent *e) override
virtual QModelIndex moveCursor(QAbstractItemView::CursorAction cursorAction, Qt::KeyboardModifiers modifiers) override
virtual void paintEvent(QPaintEvent *e) override
virtual void resizeEvent(QResizeEvent *e) override
virtual void rowsAboutToBeRemoved(const QModelIndex &parent, int start, int end) override
virtual void rowsInserted(const QModelIndex &parent, int start, int end) 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 void startDrag(Qt::DropActions supportedActions) override
virtual void timerEvent(QTimerEvent *e) override
virtual void updateGeometries() override
virtual int verticalOffset() const override
virtual QStyleOptionViewItem viewOptions() const override
virtual QSize viewportSizeHint() const override
virtual QRegion visualRegionForSelection(const QItemSelection &selection) const override
virtual void wheelEvent(QWheelEvent *e) override
  • 38 защищённых функций унаследованных от QAbstractItemView
  • 20 защищённых функций унаследованных от QAbstractScrollArea
  • 4 защищённых функций унаследованных от QFrame
  • 35 защищённых функций унаследованных от QWidget
  • 9 защищённых функций унаследованных от QObject
  • 1 защищённая функция унаследованная от QPaintDevice

Дополнительные унаследованные члены

  • 9 публичных слотов унаследованных от QAbstractItemView
  • 19 публичных слотов унаследованных от QWidget
  • 1 публичный слот унаследованный от QObject
  • 1 публичная переменная унаследованная от QObject
  • 5 статических публичных членов унаследованных от QWidget
  • 10 статических публичных членов унаследованных от QObject
  • 9 защищённых слотов унаследованных от QAbstractItemView
  • 1 защищённый слот унаследованный от QWidget
  • 2 защищённых переменных унаследованных от QObject
  • 1 защищённый тип унаследованный от QPaintDevice

Подробное описание

Класс QListView предоставляет представление списка или значков для модели.

Класс QListView отображает элементы, хранящиеся в модели, либо как простой неиерархический список, либо как набор значков. Этот класс используется для предоставления списков и представлений значков, которые ранее предоставлялись классами QListBox и QIconView, но с использованием более гибкого подхода, предоставляемого архитектурой Qt модель/представление.

Класс QListView является одним из классов Модель/Представление и входит в состав фреймворка Qt модель/представление.

Это представление не отображает горизонтальные или вертикальные заголовки; для отображения списка элементов с горизонтальным заголовком используйте QTreeView.

QListView реализует интерфейсы, определенные классом QAbstractItemView, чтобы позволить ему отображать данные, предоставляемые моделями, производными от класса QAbstractItemModel.

Элементы в представлении списка могут отображаться в одном из двух режимов: в режиме ListMode элементы отображаются в виде простого списка; в режиме IconMode представление списка принимает форму представления значков, в котором элементы отображаются со значками, как файлы в файловом менеджере. По умолчанию представление списка находится в режиме ListMode. Для изменения режима представления используйте функцию setViewMode(), а для определения текущего режима представления используйте viewMode().

Элементы в этих представлениях выстраиваются в направлении, указанном свойством flow представления списка. Элементы могут быть закреплены на месте или перемещаться, в зависимости от состояния movement представления.

Если элементы в модели не могут быть полностью выстроены в направлении потока, они могут быть переносны на границе виджета представления; это зависит от свойства isWrapping(). Это свойство полезно, когда элементы представляются в виде значков.

Свойства resizeMode() и layoutMode() управляют тем, как и когда элементы выстраиваются. Элементы располагаются с учетом отступа, указанного свойством spacing(), и могут существовать в воображаемой сетке заданного размером gridSize(). Элементы могут отображаться как большие или маленькие значки в зависимости от их размера iconSize().

Повышение производительности

Можно предоставить представлению подсказки о данных, которые оно обрабатывает, чтобы повысить производительность при отображении большого количества элементов. Один из подходов, который можно использовать для представлений, предназначенных для отображения элементов с одинаковыми размерами, заключается в установке свойства uniformItemSizes в значение true.

См. также Классы представлений, Пример пазла представлений элементов, QTreeView, QTableView и QListWidget.

Документация типов членов

enum QListView::Flow

Постоянная Значение Описание
QListView::LeftToRight 0 Элементы выстраиваются в представлении слева направо.
QListView::TopToBottom 1 Элементы выстраиваются в представлении сверху вниз.

enum QListView::LayoutMode

Постоянная Значение Описание
QListView::SinglePass 0 Элементы выстраиваются сразу все.
QListView::Batched 1 Элементы выстраиваются партиями по batchSize элементов.

См. также batchSize.

enum QListView::Movement

Постоянная Значение Описание
QListView::Static 0 Элементы не могут быть перемещены пользователем.
QListView::Free 1 Элементы могут быть свободно перемещены пользователем.
QListView::Snap 2 Элементы прикрепляются к заданной сетке при перемещении; см. setGridSize().

enum QListView::ResizeMode

Постоянная Значение Описание
QListView::Fixed 0 Элементы будут выстроены только при первом отображении представления.
QListView::Adjust 1 Элементы будут выстраиваться каждый раз при изменении размера представления.

enum QListView::ViewMode

Постоянная Значение Описание
QListView::ListMode 0 Элементы выстраиваются с использованием потока TopToBottom, размером Small и статичным перемещением.
QListView::IconMode 1 Элементы выстраиваются с использованием потока LeftToRight, размером Large и свободным перемещением.

Документация свойств

batchSize : int

Это свойство хранит количество элементов, выложенных в каждой группе, если layoutMode установлено в Batched

Значение по умолчанию равно 100.

Это свойство было добавлено в Qt 4.2.

Функции доступа:

int batchSize() const
void setBatchSize(int batchSize)

flow : Flow

Это свойство определяет направление выкладки элементов.

Если это свойство LeftToRight, элементы будут выкладываться слева направо. Если свойство isWrapping равно true, выкладка будет переносить на следующую строку, когда достигнет правой стороны видимой области. Если это свойство TopToBottom, элементы будут выкладываться сверху вниз, переходя на новую строку при достижении нижней границы.

Установка этого свойства, когда вид виден, приведет к повторной выкладке элементов.

По умолчанию это свойство установлено в TopToBottom.

Функции доступа:

QListView::Flow flow() const
void setFlow(QListView::Flow flow)

См. также viewMode.

gridSize : QSize

Это свойство хранит размер сетки выкладки.

Это свойство задаёт размер сетки, в которой выкладываются элементы. По умолчанию оно пустое, что означает отсутствие сетки и выкладки в виде сетки. Установка ненулевого размера включает режим выкладки в сетку. (Когда используется выкладка в сетку, свойство spacing игнорируется.)

Изменение этого свойства, когда вид виден, приводит к повторной выкладке элементов.

Функции доступа:

QSize gridSize() const
void setGridSize(const QSize &size)

См. также viewMode.

isWrapping : bool

Это свойство определяет, нужно ли переносить элементы на следующую строку.

Это свойство определяет, должна ли выкладка переносить элементы на следующую строку, когда больше нет места в видимой области. Точка переноса на следующую строку зависит от свойства flow.

Изменение этого свойства, когда вид виден, приводит к повторной выкладке элементов.

По умолчанию это свойство равно false.

Функции доступа:

bool isWrapping() const
void setWrapping(bool enable)

См. также viewMode.

layoutMode : LayoutMode

определяет, должна ли выкладка элементов происходить немедленно или с задержкой.

Это свойство определяет режим выкладки элементов. В режиме SinglePass (по умолчанию) элементы выкладываются сразу. В режиме Batched элементы выкладываются группами по batchSize элементов во время обработки событий. Это позволяет мгновенно просматривать и взаимодействовать с видимыми элементами, в то время как остальные выкладываются.

Функции доступа:

QListView::LayoutMode layoutMode() const
void setLayoutMode(QListView::LayoutMode mode)

См. также viewMode.

modelColumn : int

Это свойство хранит номер столбца в модели, который виден.

По умолчанию это свойство содержит 0, что означает, что будет показан первый столбец модели.

Функции доступа:

int modelColumn() const
void setModelColumn(int column)

movement : Movement

Это свойство определяет, могут ли элементы свободно перемещаться, привязаны ли они к сетке или вообще не могут перемещаться.

Это свойство определяет, как пользователь может перемещать элементы в представлении. Static означает, что элементы нельзя перемещать. Free означает, что пользователь может перетаскивать элементы в любое положение в представлении. Snap означает, что пользователь может перетаскивать элементы, но только в позиции, обозначенные сеткой с помощью свойства gridSize.

Изменение этого свойства, когда вид виден, приводит к повторной выкладке элементов.

По умолчанию это свойство установлено в Static.

Функции доступа:

QListView::Movement movement() const
void setMovement(QListView::Movement movement)

См. также gridSize, resizeMode и viewMode.

resizeMode : ResizeMode

Это свойство определяет, будут ли элементы повторно выкладываться при изменении размера представления.

Если это свойство Adjust, элементы будут повторно выкладываться при изменении размера представления. Если значение Fixed, элементы не будут выкладываться при изменении размера.

По умолчанию это свойство установлено в Fixed.

Функции доступа:

QListView::ResizeMode resizeMode() const
void setResizeMode(QListView::ResizeMode mode)

См. также movement, gridSize и viewMode.

selectionRectVisible : bool

управляет отображением прямоугольника выделения.

Если это свойство true , прямоугольник выделения виден; в противном случае он будет скрыт.

Примечание: прямоугольник выделения будет виден только если режим выделения позволяет выделять более одного элемента; он не будет отображаться, если режим выделения QAbstractItemView::SingleSelection.

По умолчанию это свойство false.

Это свойство было добавлено в Qt 4.3.

Функции доступа:

bool isSelectionRectVisible() const
void setSelectionRectVisible(bool show)

spacing : int

Это свойство хранит отступ между элементами в выкладке.

Это свойство задаёт размер пустого пространства, добавляемого вокруг элемента в выкладке.

Изменение этого свойства, когда вид виден, приводит к повторной выкладке элементов.

По умолчанию это свойство равно 0.

Функции доступа:

int spacing() const
void setSpacing(int space)

См. также viewMode.

uniformItemSizes : bool

Это свойство определяет, все ли элементы в списке имеют одинаковый размер.

Это свойство следует устанавливать в true только в том случае, если известно, что все элементы в представлении имеют одинаковый размер. Это позволяет представлению выполнять оптимизации для повышения производительности.

По умолчанию это свойство false.

Это свойство было добавлено в Qt 4.1.

Функции доступа:

bool uniformItemSizes() const
void setUniformItemSizes(bool enable)

viewMode : ViewMode

Это свойство содержит режим отображения QListView.

Это свойство изменит другие не установленные свойства в соответствии с установленным режимом отображения. Свойства QListView, которые уже были установлены, не будут изменены, если не был вызван метод clearPropertyFlags().

Установка режима отображения включит или отключит перетаскивание в зависимости от выбранного перемещения. Для ListMode стандартное перемещение — Static (перетаскивание отключено); для IconMode — Free (перетаскивание включено).

Функции доступа:

QListView::ViewMode viewMode() const
void setViewMode(QListView::ViewMode mode)

См. также isWrapping, spacing, gridSize, flow, movement и resizeMode.

wordWrap : bool

Это свойство содержит политику перевода текста элементов по словам

Если это свойство true, то текст элемента переносится по необходимости на границах слов; в противном случае он вообще не переносится. По умолчанию это свойство false.

Обратите внимание, что даже если перенос по словам включен, ячейка не будет расширена, чтобы освободить место для текста. Для текста, который не может быть показан, будет выводиться многоточие в соответствии с режимом обрезки текста textElideMode представления.

Это свойство было добавлено в Qt 4.2.

Функции доступа:

bool wordWrap() const
void setWordWrap(bool on)

Документация по членам-функциям

QListView::QListView(QWidget *parent = nullptr)

Создаёт новый QListView с заданным parent для просмотра модели. Используйте setModel(), чтобы задать модель.

[virtual] QListView::~QListView()

Удаляет представление.

void QListView::clearPropertyFlags()

Очищает флаги свойств, специфичные для QListView. См. viewMode.

Свойства, унаследованные от QAbstractItemView, не охватываются флагами свойств. В частности, dragEnabled и acceptsDrops вычисляются QListView при вызове setMovement() или setViewMode().

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

Переопределяет QAbstractItemView::currentChanged().

[override virtual protected] void QListView::dataChanged(const QModelIndex &topLeft, const QModelIndex &bottomRight, const QVector<int> &roles = QVector<int>())

Переопределяет QAbstractItemView::dataChanged().

[override virtual protected] void QListView::dragLeaveEvent(QDragLeaveEvent *e)

Переопределяет QAbstractItemView::dragLeaveEvent().

[override virtual protected] void QListView::dragMoveEvent(QDragMoveEvent *e)

Переопределяет QAbstractItemView::dragMoveEvent().

[override virtual protected] void QListView::dropEvent(QDropEvent *e)

Переопределяет QAbstractItemView::dropEvent().

[override virtual protected] bool QListView::event(QEvent *e)

Переопределяет QAbstractItemView::event().

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

Переопределяет QAbstractItemView::horizontalOffset().

[override virtual] QModelIndex QListView::indexAt(const QPoint &p) const

Переопределяет QAbstractItemView::indexAt().

[signal] void QListView::indexesMoved(const QModelIndexList &indexes)

Этот сигнал испускается, когда указанные indexes перемещаются в представлении.

Эта функция была добавлена в Qt 4.2.

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

Переопределяет QAbstractItemView::isIndexHidden().

bool QListView::isRowHidden(int row) const

Возвращает true, если строка row скрыта; в противном случае возвращает false.

[override virtual protected] void QListView::mouseMoveEvent(QMouseEvent *e)

Переопределяет QAbstractItemView::mouseMoveEvent().

[override virtual protected] void QListView::mouseReleaseEvent(QMouseEvent *e)

Переопределяет QAbstractItemView::mouseReleaseEvent().

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

Переопределяет QAbstractItemView::moveCursor().

[override virtual protected] void QListView::paintEvent(QPaintEvent *e)

Переопределяет QAbstractScrollArea::paintEvent().

[protected] QRect QListView::rectForIndex(const QModelIndex &index) const

Возвращает прямоугольник элемента в позиции index в модели. Прямоугольник в координатах содержимого.

См. также visualRect().

[override virtual protected] void QListView::resizeEvent(QResizeEvent *e)

Переопределяет QAbstractItemView::resizeEvent().

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

Переопределяет QAbstractItemView::rowsAboutToBeRemoved().

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

Переопределяет QAbstractItemView::rowsInserted().

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

Переопределяет QAbstractItemView::scrollTo().

[override virtual protected] QModelIndexList QListView::selectedIndexes() const

Реализовано повторно из QAbstractItemView::selectedIndexes().

[override virtual protected] void QListView::selectionChanged(const QItemSelection &selected, const QItemSelection &deselected)

Реализовано повторно из QAbstractItemView::selectionChanged().

[protected] void QListView::setPositionForIndex(const QPoint &position, const QModelIndex &index)

Устанавливает позицию содержимого элемента по индексу index в модели на заданную позицию position. Если режим перемещения списка равен Static или режим просмотра — ListView, эта функция не будет иметь эффекта.

Эта функция была добавлена в Qt 4.1.

void QListView::setRowHidden(int row, bool hide)

Если hide равно true, заданная строка row будет скрыта; в противном случае строка row будет отображена.

См. такжеisRowHidden().

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

Реализовано повторно из QAbstractItemView::setSelection().

[override virtual protected] void QListView::startDrag(Qt::DropActions supportedActions)

Реализовано повторно из QAbstractItemView::startDrag().

[override virtual protected] void QListView::timerEvent(QTimerEvent *e)

Реализовано повторно из QAbstractItemView::timerEvent().

[override virtual protected] void QListView::updateGeometries()

Реализовано повторно из QAbstractItemView::updateGeometries().

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

Реализовано повторно из QAbstractItemView::verticalOffset().

[override virtual protected] QStyleOptionViewItem QListView::viewOptions() const

Реализовано повторно из QAbstractItemView::viewOptions().

[override virtual protected] QSize QListView::viewportSizeHint() const

Реализовано повторно из QAbstractItemView::viewportSizeHint().

Эта функция была добавлена в Qt 5.2.

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

Реализовано повторно из QAbstractItemView::visualRect().

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

Реализовано повторно из QAbstractItemView::visualRegionForSelection().

Начиная с 4.7, возвращаемая область содержит только прямоугольники, пересекающие (или содержащиеся в) область просмотра.

[override virtual protected] void QListView::wheelEvent(QWheelEvent *e)

Реализовано повторно из QAbstractScrollArea::wheelEvent().

© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/archives/qt-5.11/qlistview.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API