Редактирование: Qt:Документация 4.3.2/qabstractitemview
Материал из Wiki.crossplatform.ru
Внимание: Вы не представились системе. Ваш IP-адрес будет записан в историю изменений этой страницы.
ПРЕДУПРЕЖДЕНИЕ: Длина этой страницы составляет 93 килобайт. Страницы, размер которых приближается к 32 КБ или превышает это значение, могут неверно отображаться в некоторых браузерах. Пожалуйста, рассмотрите вариант разбиения страницы на меньшие части.
Правка может быть отменена. Пожалуйста, просмотрите сравнение версий, чтобы убедиться, что это именно те изменения, которые вас интересуют, и нажмите «Записать страницу», чтобы изменения вступили в силу.
Текущая версия | Ваш текст | ||
Строка 3: | Строка 3: | ||
=QAbstractItemView Class Reference<br /><sup><sup>[модуль [[Qt:Документация 4.3.2/qtgui | QtGui]] ] </sup></sup>= | =QAbstractItemView Class Reference<br /><sup><sup>[модуль [[Qt:Документация 4.3.2/qtgui | QtGui]] ] </sup></sup>= | ||
- | QAbstractItemView | + | The QAbstractItemView class provides the basic functionality for item view classes. [[#details | More...]] |
<source lang="cpp-qt"> #include <QAbstractItemView></source> | <source lang="cpp-qt"> #include <QAbstractItemView></source> | ||
- | + | Inherits [[Qt:Документация 4.3.2/qabstractscrollarea | QAbstractScrollArea]]. | |
- | + | Inherited by [[Qt:Документация 4.3.2/qcolumnview | QColumnView]], [[Qt:Документация 4.3.2/qheaderview | QHeaderView]], [[Qt:Документация 4.3.2/qlistview | QListView]], [[Qt:Документация 4.3.2/qtableview | QTableView]], and [[Qt:Документация 4.3.2/qtreeview | QTreeView]]. | |
*[[Qt:Документация 4.3.2/qabstractitemview-members | Список всех членов включая унаследованные]] | *[[Qt:Документация 4.3.2/qabstractitemview-members | Список всех членов включая унаследованные]] | ||
Строка 210: | Строка 210: | ||
<div id="details"></div><hr /> | <div id="details"></div><hr /> | ||
==Подробное описание== | ==Подробное описание== | ||
- | Класс QAbstractItemView реализует базовый общий функционал | + | Класс QAbstractItemView реализует базовый общий функционал классов отображающих данные из моделей. |
QAbstractItemView является базовым классом для всех стандартных графических элементов отображающих данные из объектов класса [[Qt:Документация 4.3.2/qabstractitemmodel | QAbstractItemModel]]. QAbstractItemView - это абстрактный класс, и создавать его экземпляры непосредственно нельзя. Он предоставляет стандартный интерфейс для взаимодействия между моделями с помощью механизма сигналов и слотов для таких задач как синхронизация с изменениями в моделях. Данный класс обеспечивает простую поддержку работы с клавиатурой и мышью, прокрутки, редактирования записей и их выделения. | QAbstractItemView является базовым классом для всех стандартных графических элементов отображающих данные из объектов класса [[Qt:Документация 4.3.2/qabstractitemmodel | QAbstractItemModel]]. QAbstractItemView - это абстрактный класс, и создавать его экземпляры непосредственно нельзя. Он предоставляет стандартный интерфейс для взаимодействия между моделями с помощью механизма сигналов и слотов для таких задач как синхронизация с изменениями в моделях. Данный класс обеспечивает простую поддержку работы с клавиатурой и мышью, прокрутки, редактирования записей и их выделения. | ||
Строка 216: | Строка 216: | ||
Класс QAbstractItemView - это один из [[Qt:Документация 4.3.2/model-view | классов модель-представление (Model-View)]] и входит в состав [[Qt:Документация 4.3.2/model-view-programming | инфраструктуры модель-представление]] Qt. | Класс QAbstractItemView - это один из [[Qt:Документация 4.3.2/model-view | классов модель-представление (Model-View)]] и входит в состав [[Qt:Документация 4.3.2/model-view-programming | инфраструктуры модель-представление]] Qt. | ||
- | + | The view classes that inherit QAbstractItemView only need to implement their own view-specific functionality, such as drawing items, returning the geometry of items, finding items, etc. | |
- | QAbstractItemView | + | QAbstractItemView provides common slots such as [[Qt:Документация 4.3.2/qabstractitemview#edit | edit]]() and [[Qt:Документация 4.3.2/qabstractitemview#setCurrentIndex | setCurrentIndex]](). Many protected slots are also provided, including [[Qt:Документация 4.3.2/qabstractitemview#dataChanged | dataChanged]](), [[Qt:Документация 4.3.2/qabstractitemview#rowsInserted | rowsInserted]](), [[Qt:Документация 4.3.2/qabstractitemview#rowsAboutToBeRemoved | rowsAboutToBeRemoved]](), [[Qt:Документация 4.3.2/qabstractitemview#selectionChanged | selectionChanged]](), and [[Qt:Документация 4.3.2/qabstractitemview#currentChanged | currentChanged]](). |
- | + | The root item is returned by [[Qt:Документация 4.3.2/qabstractitemview#rootIndex | rootIndex]](), and the current item by [[Qt:Документация 4.3.2/qabstractitemview#currentIndex | currentIndex]](). To make sure that an item is visible use [[Qt:Документация 4.3.2/qabstractitemview#scrollTo | scrollTo]](). | |
- | + | Some of QAbstractItemView's functions are concerned with scrolling, for example [[Qt:Документация 4.3.2/qabstractitemview#horizontalScrollMode-prop | setHorizontalScrollMode]]() and [[Qt:Документация 4.3.2/qabstractitemview#verticalScrollMode-prop | setVerticalScrollMode]](). To set the range of the scroll bars, you can, for example, reimplement the view's [[Qt:Документация 4.3.2/qabstractitemview#resizeEvent | resizeEvent]]() function: | |
<source lang="cpp-qt"> void MyView::resizeEvent(QResizeEvent *event) { | <source lang="cpp-qt"> void MyView::resizeEvent(QResizeEvent *event) { | ||
horizontalScrollBar()->setRange(0, realWidth - width()); | horizontalScrollBar()->setRange(0, realWidth - width()); | ||
... | ... | ||
}</source> | }</source> | ||
- | + | Note that the range is not updated until the widget is shown. | |
- | + | Several other functions are concerned with selection control; for example [[Qt:Документация 4.3.2/qabstractitemview#selectionMode-prop | setSelectionMode]](), and [[Qt:Документация 4.3.2/qabstractitemview#selectionBehavior-prop | setSelectionBehavior]](). This class provides a default selection model to work with ([[Qt:Документация 4.3.2/qabstractitemview#selectionModel | selectionModel]]()), but this can be replaced by using [[Qt:Документация 4.3.2/qabstractitemview#setSelectionModel | setSelectionModel]]() with an instance of [[Qt:Документация 4.3.2/qitemselectionmodel | QItemSelectionModel]]. | |
- | + | ||
- | + | For complete control over the display and editing of items you can specify a delegate with [[Qt:Документация 4.3.2/qabstractitemview#setItemDelegate | setItemDelegate]](). | |
- | QAbstractItemView | + | QAbstractItemView provides a lot of protected functions. Some are concerned with editing, for example, [[Qt:Документация 4.3.2/qabstractitemview#edit | edit]](), and [[Qt:Документация 4.3.2/qabstractitemview#commitData | commitData]](), whilst others are keyboard and mouse event handlers. |
- | + | See also [[Qt:Документация 4.3.2/model-view-view | View Classes]], [[Qt:Документация 4.3.2/model-view-programming | Model/View Programming]], [[Qt:Документация 4.3.2/qabstractitemmodel | QAbstractItemModel]], and [[Qt:Документация 4.3.2/itemviews-chart | Chart Example]]. | |
<hr /> | <hr /> | ||