Home · All Classes · Main Classes · Grouped Classes · Modules · Functions

Описание Класса QLayoutItem
[модуль QtGui]

Класс QLayoutItem представляет абстрактную запись, управляемую QLayout. Далее...

#include <QLayoutItem>

Наследуется QLayout, QSpacerItem и QWidgetItem.

Открытые Функции


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

Класс QLayoutItem представляет абстрактную запись, управляемую QLayout.

Он используется при компоновке.

Чисто виртуальные функции, такие как sizeHint(), minimumSize(), maximumSize() и expanding() предоставляются для получения информации о компоновке.

Геометрия компоновки может быть установлена и получена с помощью setGeometry() и geometry(), а выравнивание с помощью setAlignment() и alignment().

isEmpty() сообщает, является-ли запись компоновки пустой. Является-ли конкретная запись наследником QWidget, может быть установлено с помощью widget(). Так-же как и layout() и spacerItem().

Некоторые компоновщики имеют взаимосвязанные ширину и высоту. Они могут быть получены с использованием hasHeightForWidth(), heightForWidth() и minimumHeightForWidth(). Для получения более подробной информации см. в Qt Quarterly статью Trading Height for Width.

См. также QLayout.


Описание Функций-Членов

QLayoutItem::QLayoutItem ( Qt::Alignment alignment = 0 )

Создает запись компоновки с выравниванием alignment. Не все подклассы поддерживают выравнивание.

QLayoutItem::~QLayoutItem ()   [virtual]

Разрушает QLayoutItem.

Qt::Alignment QLayoutItem::alignment () const

Возвращает выравнивание данной записи.

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

Qt::Orientations QLayoutItem::expandingDirections () const   [pure virtual]

Сообщает, может-ли запись компоновки использовать больше пространства, чем sizeHint(). Возвращение Qt::Vertical или Qt::Horizontal сообщает, что можно расширяться только в одном направлении. Следует помнить, что значение Qt::Vertical | Qt::Horizontal обозначает, что запись может расти в обоих направлениях.

QRect QLayoutItem::geometry () const   [pure virtual]

Возвращает прямоугольник, полностью закрывающий запись компоновки.

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

bool QLayoutItem::hasHeightForWidth () const   [virtual]

Возвращает true если предпочтительная высота компоновщика зависит от ширины; в противном случае возвращает false. Реализация по умолчанию возвращает false.

Заново реализуйте данную функцию в менеджере компоновки, если он поддерживает предпочтительную высоту, зависящую от ширины.

См. также heightForWidth() и QWidget::heightForWidth().

int QLayoutItem::heightForWidth ( int w ) const   [virtual]

Возвращает предпочтительную высоту данной записи компоновки, зависящую от переданной ширины w.

Реализация по умолчанию возвращает -1, обозначающее, что высота записи не зависит от ее ширины. Вызов функции hasHeightForWidth(), обычно, работает более быстро, чем вызов данной функции и сравнение результата с -1.

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

    int MyLayout::heightForWidth(int w) const
    {
        if (cache_dirty || cached_width != w) {
            // not all C++ compilers support "mutable"
            MyLayout *that = (MyLayout*)this;
            int h = calculateHeightForWidth(w);
            that->cached_hfw = h;
            return h;
        }
        return cached_hfw;
    }

Кеширование настоятельно рекомендуется, так как без этого функция может выполняться продолжительное время.

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

void QLayoutItem::invalidate ()   [virtual]

Лишает силы любую кешированную информацию в данной записи компоновки.

bool QLayoutItem::isEmpty () const   [pure virtual]

Реализуется в подклассах для получения информации о том, является-ли данная запись пустой, т.е. содержит-ли она какие-либо виджеты.

QLayout * QLayoutItem::layout ()   [virtual]

Если данная запись является QLayout, то возвращается она-же как QLayout; в противном случае возвращается 0. Данная функция обеспечивает безопасное преобразование типов.

QSize QLayoutItem::maximumSize () const   [pure virtual]

Реализуется в подклассах для получения максимального возможного размера данной записи.

int QLayoutItem::minimumHeightForWidth ( int w ) const   [virtual]

Возвращает минимальную высоту данного виджета при ширине w. Реализация по умолчанию просто возвращает heightForWidth(w).

QSize QLayoutItem::minimumSize () const   [pure virtual]

Реализуется в подклассах для получения минимального возможного размера данной записи.

void QLayoutItem::setAlignment ( Qt::Alignment alignment )

Устанавливает выравнивание данной записи в alignment. Не все подклассы поддерживают выравнивание.

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

void QLayoutItem::setGeometry ( const QRect & r )   [pure virtual]

Реализуется в подклассах для установки геометрии данной записи в r.

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

QSize QLayoutItem::sizeHint () const   [pure virtual]

Реализуется в подклассах для получения предпочтительного размера данной записи.

QSpacerItem * QLayoutItem::spacerItem ()   [virtual]

Если данный элемент является QSpacerItem, то возвращается он-же как QSpacerItem; в противном случае возвращается 0. Данная функция обеспечивает безопастное преобразование типов.

QWidget * QLayoutItem::widget ()   [virtual]

Если данный элемент является QWidget, то возвращается он-же как QWidget; в противном случае возвращается 0. Данная функция обеспечивает безопастное преобразование типов.


Copyright © 2005 Trolltech Trademarks
Qt 4.1.0
Hosted by uCoz