Описание класса QTabWidget
|
enum | TabPosition { North, South, West, East } |
enum | TabShape { Rounded, Triangular } |
|
|
QTabWidget ( QWidget * parent = 0 ) | |
~QTabWidget () | |
int | addTab ( QWidget * page, const QString & label ) |
int | addTab ( QWidget * page, const QIcon & icon, const QString & label ) |
void | clear () |
QWidget * | cornerWidget ( Qt::Corner corner = Qt::TopRightCorner ) const |
int | count () const |
int | currentIndex () const |
QWidget * | currentWidget () const |
bool | documentMode () const |
Qt::TextElideMode | elideMode () const |
QSize | iconSize () const |
int | indexOf ( QWidget * w ) const |
int | insertTab ( int index, QWidget * page, const QString & label ) |
int | insertTab ( int index, QWidget * page, const QIcon & icon, const QString & label ) |
bool | isMovable () const |
bool | isTabEnabled ( int index ) const |
void | removeTab ( int index ) |
void | setCornerWidget ( QWidget * widget, Qt::Corner corner = Qt::TopRightCorner ) |
void | setDocumentMode ( bool set ) |
void | setElideMode ( Qt::TextElideMode ) |
void | setIconSize ( const QSize & size ) |
void | setMovable ( bool movable ) |
void | setTabEnabled ( int index, bool enable ) |
void | setTabIcon ( int index, const QIcon & icon ) |
void | setTabPosition ( TabPosition ) |
void | setTabShape ( TabShape s ) |
void | setTabText ( int index, const QString & label ) |
void | setTabToolTip ( int index, const QString & tip ) |
void | setTabWhatsThis ( int index, const QString & text ) |
void | setTabsClosable ( bool closeable ) |
void | setUsesScrollButtons ( bool useButtons ) |
QIcon | tabIcon ( int index ) const |
TabPosition | tabPosition () const |
TabShape | tabShape () const |
QString | tabText ( int index ) const |
QString | tabToolTip ( int index ) const |
QString | tabWhatsThis ( int index ) const |
bool | tabsClosable () const |
bool | usesScrollButtons () const |
QWidget * | widget ( int index ) const |
virtual QSize | minimumSizeHint () const |
virtual QSize | sizeHint () const |
void | setCurrentIndex ( int index ) |
void | setCurrentWidget ( QWidget * widget ) |
void | currentChanged ( int index ) |
void | tabCloseRequested ( int index ) |
void | initStyleOption ( QStyleOptionTabWidgetFrame * option ) const |
void | setTabBar ( QTabBar * tb ) |
QTabBar * | tabBar () const |
virtual void | tabInserted ( int index ) |
virtual void | tabRemoved ( int index ) |
virtual void | changeEvent ( QEvent * ev ) |
virtual bool | event ( QEvent * ev ) |
virtual void | keyPressEvent ( QKeyEvent * e ) |
virtual void | paintEvent ( QPaintEvent * event ) |
virtual void | resizeEvent ( QResizeEvent * e ) |
virtual void | showEvent ( QShowEvent * ) |
Класс QTabWidget предоставляет набор виджетов со вкладками.
Виджет со вкладками - это панель вкладок (смотрите QTabBar) и "область страниц", которая используется для отображения страниц, связанных с каждой из вкладок. По умолчанию панель вкладок отображается над областью страниц, но доступны различные конфигурации (смотрите TabPosition). Каждая вкладка ассоциируется с отдельным виджетом (называемым страницей). Только текущая страница отображается в области страниц; все другие страницы скрыты. Пользователь может отобразить отдельную страницу, щёлкнув по её вкладке или нажав комбинацию горячих клавиш Alt+letter, если она имеется.
Обычно для использования QTabWidget необходимо выполнить следующее:
Положение вкладок определяется tabPosition, их форма - tabShape.
Сигнал currentChanged() посылается, когда пользователь выбирает страницу.
Индекс текущей страницы доступен через currentIndex(), виджет текущей страницы - через currentWidget(). Вы можете запросить указатель на виджет страницы с указанным индексом при помощи widget(), а можете найти индекс позиции виджета при помощи indexOf(). Используйте setCurrentWidget() или setCurrentIndex() для отображения конкретной страницы.
Вы можете изменить текст и иконку вкладки при помощи setTabText() или setTabIcon(). Вкладка и связанная с ней страница могут быть удалены при помощи removeTab().
Каждая вкладка либо включена, либо отключена в любой момент времени (смотрите setTabEnabled()). Если вкладка включена, то текст вкладки отображается нормально и пользователь может выбрать эту вкладку. Если она отключена, то вкладка отображается по-другому и пользователь не может выбрать эту вкладку. Заметьте, что даже если вкладка отключена, страница может оставаться видимой, если, например, оказалось, что все вкладки отключены.
Виджет со вкладками может быть хорошим решением для разделения сложного диалогового окна. Альтернативой является использование QStackedWidget, для которого предоставляются какие-либо средства навигации, например, QToolBar или QListWidget.
Большая часть функциональность в QTabWidget обеспечивается QTabBar (сверху, реализует вкладки) и QStackedWidget (большая часть области, реализует индивидуальные страницы).
Виджет со вкладками в стиле Windows XP. | Виджет со вкладками в стиле Macintosh. | Виджет со вкладками в стиле Plastique. |
Смотрите также QTabBar, QStackedWidget, QToolBox и Пример "Tab Dialog".
Данное перечисление определяет, где QTabWidget рисует ряд вкладок:
Константа | Значение | Описание |
---|---|---|
QTabWidget::North | 0 | Вкладки отображаются над страницами. |
QTabWidget::South | 1 | Вкладки отображаются под страницами. |
QTabWidget::West | 2 | Вкладки отображаются слева от страниц. |
QTabWidget::East | 3 | Вкладки отображаются справа от страниц. |
Данное перечисление определяет форму вкладок:
Константа | Значение | Описание |
---|---|---|
QTabWidget::Rounded | 0 | Вкладки отображаются с закруглёнными углами. Это форма по умолчанию. |
QTabWidget::Triangular | 1 | Вкладки отображаются со скошенными углами. |
Это свойство содержит количество вкладок в панели вкладок.
По умолчанию это свойство содержит значение, равное 0.
Функции доступа:
int | count () const |
Это свойство содержит индекс позиции текущей вкладки.
Если текущего виджета нет, то текущий индекс будет равен -1.
По умолчанию это свойство содержит значение -1, поскольку изначально на виджете нет вкладок.
Функции доступа:
int | currentIndex () const |
void | setCurrentIndex ( int index ) |
Уведомляющий сигнал:
void | currentChanged ( int index ) |
Это свойство определяет, отображается или нет виджет со вкладками в режиме, подходящем для страниц документа. Это то же самое, что и режим документа в Mac OS X.
Когда это свойство установлено, виджет со вкладками не отрисовывает рамку. Этот режим полезен для отображения страниц, типичных для документов, где страница занимает большую часть области виджета со вкладками.
Это свойство было введено в Qt 4.5.
Функции доступа:
bool | documentMode () const |
void | setDocumentMode ( bool set ) |
Смотрите также elideMode, QTabBar::documentMode, QTabBar::usesScrollButtons и QStyle::SH_TabBar_PreferNoArrows.
Это свойство определяет, как должен сокращаться текст в панели вкладок.
Это свойство управляет тем, как элементы сокращаются, когда не хватает места для их отображения при заданном размере панели вкладок.
По умолчанию это значение зависит от стиля.
Это свойство было введено в Qt 4.2.
Функции доступа:
Qt::TextElideMode | elideMode () const |
void | setElideMode ( Qt::TextElideMode ) |
Смотрите также QTabBar::elideMode, usesScrollButtons и QStyle::SH_TabBar_ElideMode.
Это свойство определяет размер пиктограмм в панели вкладок.
Значение по умолчанию зависит от стиля. Это максимальный размер, который будет иметь пиктограмма. Пиктограммы не увеличиваются, если они имеют меньший размер.
Это свойство было введено в Qt 4.2.
Функции доступа:
QSize | iconSize () const |
void | setIconSize ( const QSize & size ) |
Смотрите также QTabBar::iconSize.
Это свойство определяет, может ли пользователь перемещать вкладки в пределах области панели вкладок.
По умолчанию это свойство равно false;
Это свойство было введено в Qt 4.5.
Функции доступа:
bool | isMovable () const |
void | setMovable ( bool movable ) |
Это свойство определяет позицию вкладок в этом виджете со вкладками.
Возможные значения для этого свойства описаны в перечислении TabPosition.
По умолчанию это свойство установлено в North.
Функции доступа:
TabPosition | tabPosition () const |
void | setTabPosition ( TabPosition ) |
Смотрите также TabPosition.
Это свойство определяет форму вкладок в этом виджете со вкладками.
Возможными значениями для этого свойства являются QTabWidget::Rounded (по умолчанию) и QTabWidget::Triangular.
Функции доступа:
TabShape | tabShape () const |
void | setTabShape ( TabShape s ) |
Смотрите также TabShape.
Это свойство указывает, добавляются ли автоматически кнопки закрытия к каждой вкладке.
Это свойство было введено в Qt 4.5.
Функции доступа:
bool | tabsClosable () const |
void | setTabsClosable ( bool closeable ) |
Смотрите также QTabBar::tabsClosable().
Это свойство указывает, должна ли панель вкладок отображать кнопки для прокрутки вкладок, когда их слишком много.
Когда в панели вкладок имеется слишком много вкладок для её размера, панель вкладок может либо расширить свой размер, либо добавить кнопки, которые позволяют вам прокручивать вкладки.
По умолчанию это значение зависит от стиля.
Это свойство было введено в Qt 4.2.
Функции доступа:
bool | usesScrollButtons () const |
void | setUsesScrollButtons ( bool useButtons ) |
Смотрите также elideMode, QTabBar::usesScrollButtons и QStyle::SH_TabBar_PreferNoArrows.
Создаёт виджет со вкладками с родителем parent.
Уничтожает виджет со вкладками.
Добавляет вкладку с указанной страницей page и меткой label к виджету со вкладками и возвращает индекс вкладки в панели вкладок.
Если метка label вкладки содержит амперсанд, то буква, следующая за амперсандом, используется как горячая клавиша для вкладки, например, если метка "Bro&wse", то Alt+W становится комбинацией горячих клавиш, которая будет перемещать фокус ввода к этой вкладке.
Замечание: Если вы вызовете addTab() после show(), то система компоновки попытается подстроиться под изменения в иерархии виджетов, что может вызвать мерцание. Для предотвращения этого вы можете установить свойство QWidget::updatesEnabled в false перед изменениями; не забудьте установить свойство в true, когда изменения будут завершены, что даст возможность виджету снова получать события рисования.
Смотрите также insertTab().
Это перегруженная функция.
Добавляет вкладку с указанной страницей page, пиктограммой icon и меткой label к виджету со вкладками и возвращает индекс вкладки в панели вкладок.
Это функция аналогична addTab(), но с дополнительным параметром icon.
Переопределено от QWidget::changeEvent().
Удаляет все страницы, но не уничтожает их. Вызов этой функции эквивалентен вызову removeTab() до тех пор, пока виджет со вкладками не станет пустым.
Возвращает виджет, отображаемый в углу corner виджета со вкладками или 0.
Смотрите также setCornerWidget().
Этот сигнал посылается, когда изменяется индекс текущей страницы. Параметром является новый индекс index текущей страницы или -1, если нет новой страницы (например, если нет виджетов в QTabWidget)
Смотрите также currentWidget() и currentIndex.
Возвращает указатель на страницу, отображаемую в данный момент диалогом со вкладками. Диалог со вкладками сделает всё возможное, чтобы убедиться, что это значение никогда не будет 0 (но если вы хорошо попытаетесь, то это возможно).
Смотрите также currentIndex() и setCurrentWidget().
Переопределено от QObject::event().
Возвращает индекс позиции страницы, которая занята виджетом w, или -1, если виджет не найден.
Инициализирует параметр option значениями этого QTabWidget. Этот метод полезен для подклассов, когда им необходим QStyleOptionTabWidgetFrame, но они не хотят заполнять его сами.
Смотрите также QStyleOption::initFrom() и QTabBar::initStyleOption().
Вставляет вкладку с указанной меткой label и страницей page в виджет со вкладками по указанному индексу index и возвращает индекс вставленной вкладки в панели вкладок.
Метка отображается на вкладке и может различаться по внешнему виду в зависимости от конфигурации виджета со вкладками.
Если метка label вкладки содержит амперсанд, то буква, следующая за амперсандом, используется как горячая клавиша для вкладки, например, если метка "Bro&wse", то Alt+W становится комбинацией горячих клавиш, которая будет перемещать фокус ввода к этой вкладке.
Если индекс index выходит за границы, то вкладка просто добавляется в конец. В противном случае она вставляется в указанную позицию.
Если QTabWidget был пустой перед вызовом этой функции, то новая страница становится текущей страницей. Вставка новой вкладки по индексу, меньшему или равному текущему индексу, будет увеличивать текущий индекс, но сохранит текущую страницу.
Замечание: Если вы вызовете insertTab() после show(), то система компоновки попытается подстроиться под изменения в иерархии виджетов, что может вызвать мерцание. Для предотвращения этого вы можете установить свойство QWidget::updatesEnabled в false перед изменениями; не забудьте установить свойство в true, когда изменения будут завершены, что даст возможность виджету снова получать события рисования.
Смотрите также addTab().
Это перегруженная функция.
Вставляет вкладку с указанной меткой label, страницей page и пиктограммой icon в виджет со вкладками по указанному индексу index и возвращает индекс вставленной вкладки в панели вкладок.
Это функция аналогична insertTab(), но с дополнительным параметром icon.
Возвращает true, если страница в позиции с индексом index включена; в противном случае возвращает false.
Смотрите также setTabEnabled() и QWidget::isEnabled().
Переопределено от QWidget::keyPressEvent().
Переопределено от QWidget::minimumSizeHint().
Возвращает подходящий минимальный размер для виджета со вкладками.
Переопределено от QWidget::paintEvent().
Рисует панель вкладок виджета со вкладками в ответ на событие рисования event.
Удаляет вкладку в позиции с индексом index из этого стека виджетов. Сам виджет страницы не уничтожается.
Смотрите также addTab() и insertTab().
Переопределено от QWidget::resizeEvent().
Устанавливает заданный виджет widget для отображения в указанном углу corner виджета со вкладками. Геометрия виджета определяется на основе sizeHint() и style() виджета.
Будет использоваться только горизонтальная составляющая corner.
При передаче 0 виджеты в углу не будут отображаться.
Любой ранее установленный угловой виджет будет скрыт.
Все установленные здесь виджеты будут удалены виджетом со вкладками при его уничтожении, если вы вручную не изменили родителя виджета после установки какого-то другого углового виджета (или 0).
Замечание: Угловые виджеты предназначены для позиций North и South вкладок; другие ориентации, насколько известно, не работают должным образом.
Смотрите также cornerWidget() и setTabPosition().
Делает виджет widget текущим виджетом. Виджет widget должен быть страницей в этом виджете со вкладками.
Смотрите также addTab(), setCurrentIndex() и currentWidget().
Заменяет заголовочный QTabBar диалога на панель вкладок tb. Заметьте, что эту функцию необходимо вызвать перед добавлением любых вкладок, иначе поведение не определено.
Смотрите также tabBar().
Если enable равен true, то страница в позиции с индексом index включается; в противном случае страница в позиции с индексом index отключается. Вкладка страницы перерисовывается соответствующим образом.
QTabWidget внутри себя использует QWidget::setEnabled() вместо сохранения отдельного флага.
Заметьте, что даже отключённая вкладка/страница может быть видимой. Если страница уже видна, то QTabWidget не будет её скрывать; если все страницы отключены, то QTabWidget отобразит одну из них.
Смотрите также isTabEnabled() и QWidget::setEnabled().
Это перегруженная функция.
Устанавливает пиктограмму icon для вкладки в позиции с индексом index.
Смотрите также tabIcon().
Определяет новую метку label для страницы на вкладке в позиции с индексом index.
Если предоставленный текст содержит символ амперсанда ('&'), то для неё автоматически создается горячая клавиша. Следующий после '&' символ будет использован для создания сочетания "горячих" клавиш. Любая предыдущая комбинация "горячих" клавиш будет заменена, а если комбинация "горячих" клавиш в тексте не определена, то очищена. За подробностями обращайтесь к документации по QShortcut (для фактического отображения амперсанда используйте '&&').
Смотрите также tabText().
Устанавливает всплывающую подсказку у вкладки для страницы в позиции с индексом index в tip.
Смотрите также tabToolTip().
Устанавливает текст подсказки "Что это?" для страницы в позиции с индексом index в text.
Эта функция была введена в Qt 4.1.
Смотрите также tabWhatsThis().
Переопределено от QWidget::showEvent().
Переопределено от QWidget::sizeHint().
Возвращает текущий QTabBar.
Смотрите также setTabBar().
Этот сигнал посылается, когда нажимается кнопка закрытия на вкладке. index - это индекс, который должен быть удалён.
Эта функция была введена в Qt 4.5.
Смотрите также setTabsClosable().
Возвращает пиктограмму для вкладки на странице в позиции с индексом index.
Смотрите также setTabIcon().
Этот виртуальный обработчик вызывается после того, как была добавлена или вставлена в позицию с индексом index новая вкладка.
Смотрите также tabRemoved().
Этот виртуальный обработчик вызывается после того, как вкладка была удалена из позиции с индексом index.
Смотрите также tabInserted().
Возвращает текст метки для вкладки на странице в позиции с индексом index.
Смотрите также setTabText().
Возвращает всплывающую подсказку вкладки для страницы в позиции с индексом index или пустую строку, если всплывающая подсказка не была установлена.
Смотрите также setTabToolTip().
Возвращает текст подсказки "Что это?" для страницы в позиции с индексом index или пустую строку, если текст подсказки не был установлен.
Эта функция была введена в Qt 4.1.
Смотрите также setTabWhatsThis().
Возвращает страницу вкладки в позиции с индексом index или 0, если индекс index выходит за допустимые границы.
Авторские права © 2010 Nokia Corporation и/или её дочерние компании | Торговые марки | Qt 4.6.4 |
Попытка перевода Qt документации. Если есть желание присоединиться, или если есть замечания или пожелания, то заходите на форум: Перевод Qt документации на русский язык... Люди внесшие вклад в перевод: Команда переводчиков |