Qt:Документация 4.3.2/qstackedlayout
Материал из Wiki.crossplatform.ru
Внимание: Актуальная версия перевода документации находится здесь |
__NOTOC__
Главная · Все классы · Основные классы · Классы по группам · Модули · Функции |
Описание класса QStackedLayout
[модуль QtGui ]
Класс QStackedLayout предоставляет стек виджетов, в котором в один момент виден только один элемент. Далее...
#include <QStackedLayout>
Наследует QLayout.
Свойства
- count : const int
- currentIndex : int
Открытые функции
- QStackedLayout ()
- QStackedLayout ( QWidget * parent )
- QStackedLayout ( QLayout * parentLayout )
- ~QStackedLayout ()
- int addWidget ( QWidget * widget )
- virtual int count () const
- int currentIndex () const
- QWidget * currentWidget () const
- int insertWidget ( int index, QWidget * widget )
- QWidget * widget ( int index ) const
- 28 открытых функций, унаследованных от QLayout
- 29 открытых функций, унаследованных от QObject
- 17 открытых функций, унаследованных от QLayoutItem
Открытые слоты
- void setCurrentIndex ( int index )
- void setCurrentWidget ( QWidget * widget )
- 1 открытый слот, унаследованный от QObject
Сигналы
- void currentChanged ( int index )
- void widgetRemoved ( int index )
- 1 сигнал, унаследованный от QObject
Дополнительные унаследованные члены
- 1 статический открытый член, унаследованный от QLayout
- 5 статических открытых членов, унаследованных от QObject
- 3 защищенные функции, унаследованные от QLayout
- 7 защищенных функций, унаследованных от QObject
Подробное описание
Класс QStackedLayout предоставляет стек виджетов, в котором в один момент виден только один элемент.
QStackedLayout может использоваться для создания пользовательского интерфейса подобного тому, что обеспечивает QTabWidget. Также удобно поместить класс QStackedWidget на вершину QStackedLayout.
QStackedLayout можно заселить множеством дочерних виджетов ("страниц"). Пример:
QWidget *firstPageWidget = new QWidget; QWidget *secondPageWidget = new QWidget; QWidget *thirdPageWidget = new QWidget; QStackedLayout *stackedLayout = new QStackedLayout; stackedLayout->addWidget(firstPageWidget); stackedLayout->addWidget(secondPageWidget); stackedLayout->addWidget(thirdPageWidget); QVBoxLayout *mainLayout = new QVBoxLayout; mainLayout->addLayout(stackedLayout); setLayout(mainLayout);
QStackedLayout не предоставляет ни каких средств переключения страниц для пользователя. Обычно страницы переключаются с помощью QComboBox или QListWidget, содержащих заголовки страниц QStackedLayout. Пример:
QComboBox *pageComboBox = new QComboBox; pageComboBox->addItem(tr("Page 1")); pageComboBox->addItem(tr("Page 2")); pageComboBox->addItem(tr("Page 3")); connect(pageComboBox, SIGNAL(activated(int)), stackedLayout, SLOT(setCurrentIndex(int)));
При вставке виджеты добавляются во внутренний список. Функция indexOf() возвращает индекс виджета в этом списке. Виджеты также могут быть добавлены в конец списка с помощью addWidget() или вставлены в определённое место по индексу, используя insertWidget(). Функция removeWidget() удаляет виджет по заданному индексу из компоновщика. Число содержащихся в компоновщике виджетов можно получить с помощью count().
Функция widget() возвращает виджет, находящийся в позиции с переданным индексом. Индекс виджета, отображаемого в данный момент на экране, можно получить посредством currentIndex(), а показать другой с помощью функции setCurrentIndex(). Похожим образом, отображаемый на данный момент виджет может быть получен посредством currentWidget() и переустановлен с помощью setCurrentWidget().
Всякий раз, когда отображаемый виджет изменяется или удаляется из компоновщика, посылаются сигналы currentChanged() и widgetRemoved() в указанной последовательности.
Смотрите также QStackedWidget и QTabWidget.
Описание cвойств
count : const int
Данное свойство содержит количество виджетов, содержащихся в компоновщике.
Функции доступа:
- virtual int count () const
Смотрите также currentIndex() и widget().
currentIndex : int
Данное свойство содержит индекс видимого в данный момент виджета.
Если такого нет, то текущий индекс будет равен -1.
Функции доступа:
- int currentIndex () const
- void setCurrentIndex ( int index )
Смотрите также currentWidget() и indexOf().
Описание функций-членов
QStackedLayout::QStackedLayout ()
Создаёт QStackedLayout, не имеющего родителя.
Прежде, чем начать работать, данный QStackedLayout должен быть добавлен в другой компоновщик.
Смотрите также addWidget() и insertWidget().
QStackedLayout::QStackedLayout ( QWidget * parent )
Создает новый QStackedLayout с родителем parent.
Данный компоновщик будет установлен в виджет parent и будет управлять геометрическими параметрами его дочерних объектов.
QStackedLayout::QStackedLayout ( QLayout * parentLayout )
Создает новый QStackedLayout и вставляет его в компоновщик parentLayout.
QStackedLayout::~QStackedLayout ()
Уничтожает QStackedLayout. Помните, что при этом виджеты не уничтожаются.
int QStackedLayout::addWidget ( QWidget * widget )
Добавляет виджет widget в конец компоновщика и возвращает индекс добавленного widget.
Если до вызова данной функции QStackedLayout был пустым, то widget становится текущим виджетом.
Смотрите также insertWidget(), removeWidget() и setCurrentWidget().
void QStackedLayout::currentChanged ( int index ) [signal]
Данный сигнал испускается при смене текущего виджета. Параметр index содержит индекс нового текущего виджета.
Смотрите также currentWidget() и setCurrentWidget().
QWidget * QStackedLayout::currentWidget () const
Возвращает текущий виджет или, если в данном компоновщике нет виджетов, 0.
Смотрите также currentIndex() и setCurrentWidget().
int QStackedLayout::insertWidget ( int index, QWidget * widget )
Вставляет виджет widget в позицию index данного QStackedLayout. Если index вне диапазона виджетов, то виджет добавляется в конец (возвращает актуальный индекс вставленного виджета widget).
Если до вызова данной функции QStackedLayout был пустым, то widget становится текущим виджетом.
Добавление новых виджетов с индексом, большим или равным текущему, увеличит его, но сохранит текущий виджет.
Смотрите также addWidget(), removeWidget() и setCurrentWidget().
void QStackedLayout::setCurrentWidget ( QWidget * widget ) [slot]
Устанавливает в качестве текущего виджет widget. Новый виджет должен содержаться в компоновщике.
Смотрите также setCurrentIndex() и currentWidget().
QWidget * QStackedLayout::widget ( int index ) const
Возвращает виджет, стоящий в позиции index или, если в переданной позиции нет виджета, 0.
Смотрите также currentWidget() и indexOf().
void QStackedLayout::widgetRemoved ( int index ) [signal]
Данный сигнал посылается при удалении виджета из компоновщика, стоящего в позиции index. Параметр index передаёт индекс удалённого виджета.
Смотрите также removeWidget().
Copyright © 2007 Trolltech | Trademarks | Qt 4.3.2
|