×
Namespaces

Variants
Actions

Базовый класс для виджетов QWidget

From Nokia Developer Wiki
Jump to: navigation, search
Article Metadata

Совместимость
Платформа(ы):
Symbian

Статья
Автор: Den123 (22 Jan 2009)
Последнее редактирование: hamishwillee (11 Oct 2012)


Виджеты (widgets, происходит от window gadget) - это визуальные элементы, отображаемые на экране, являются основой всех элементов пользовательского интерфейса.

Класс QWidget - это базовый класс для всех виджетов Qt. Так как в качестве предка QWidget выступает QObject, то все виджеты изначально обладают множеством унаследованных возможностей (обработка событий, поддержка сигналов/слотов и т.д.).

Любой виджет - это прямоугольная область, отображаемая на экране. В классе QWidget присутствуют целый ряд методов, позволяющих узнать и изменить текущую позицию и размеры (pos(), geometry(), move(), resize() и т.д.). Координатами виджета считается позиция верхнего левого угла. Для упорядочивания отображения виджетов используется Z-координата. Для отображения виджетов можно указать цвет заливки либо растровое изображение.

Поддержка иерархий, присутствующая в QObject, позволяет использовать любой виджет в качестве контейнера для хранения других виджетов. Виджеты, находящиеся на вершине иерархии (не имеют предка), называются виджетами верхнего уровня (toplevel widgets). Виджеты верхнего уровня управляют дочерними элементами, отвечают за их размещение, отрисовку, удаление и т.д. Qt позволяет использовать виджет верхнего уровня в качестве основного окна приложения, однако предпочтительнее использовать классы, специально предназначенные для этих целей: QMainWindow или QDialog.

Сразу после создания виджеты являются невидимыми - это позволяет выполнить дополнительную настройку, прежде чем отобразить их на экране. Для отображения виджета и всех его элементов используется метод show():

QLabel* lb = new QLabel( "This is a toplevel widget" );
lb->setAligment( Qt :: AlignHCenter );
lb->show();

За удаление всех вложенных элементов отвечает виджет верхнего уровня. Удаление виджетов верхнего уровня пользователь должен выполнять самостоятельно.

This page was last modified on 11 October 2012, at 01:17.
83 page views in the last 30 days.

Was this page helpful?

Your feedback about this content is important. Let us know what you think.

 

Thank you!

We appreciate your feedback.

×