Spec-Zone.ru › Qt 5.13

Знакомство с Qt Designer

Запуск Designer

После установки Qt, вы можете запустить Qt Designer так же, как и любое другое приложение на хосте разработки. Также вы можете запустить Qt Designer непосредственно из Qt Creator. Qt Creator автоматически открывает все файлы .ui в интегрированном Qt Designer в режиме Проектирование.

В целом, интегрированный Qt Designer содержит те же функции, что и автономный Qt Designer. Более подробную информацию о различиях см. в Руководстве Qt Creator.

Если у вас есть большие формы, которые не помещаются в режиме Проектирование Qt Creator, вы можете открыть их в автономном Qt Designer.

Интерфейс пользователя

При использовании как автономного приложения, интерфейс пользователя Qt Designer можно настроить для предоставления многооконного интерфейса (по умолчанию) или использования в режиме пристыкованного окна. При использовании внутри интегрированной среды разработки (IDE) доступен только многооконный интерфейс. Вы можете переключаться между режимами в диалоговом окне Настройки из меню Правка.

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

Главное окно Qt Designer

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

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

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

Большинство функций Qt Designer доступны через строку меню, панель инструментов или область виджетов. Некоторые функции также доступны через контекстные меню, которые можно открыть над окнами формы. На большинстве платформ для открытия контекстных меню используется правая кнопка мыши.

Область виджетов Qt Designer

Область виджетов предоставляет выбор стандартных виджетов Qt, макетов и других объектов, которые можно использовать для создания пользовательских интерфейсов на формах. Каждая из категорий в области виджетов содержит виджеты с похожим использованием или связанными функциями.

Вы можете отобразить все доступные объекты в категории, нажав на ручку рядом с меткой категории. В режиме редактирования виджетов вы можете добавлять объекты в форму, перетаскивая соответствующие элементы из области виджетов на форму и опуская их в требуемые места.

Qt Designer предоставляет функцию временного хранилища, которая позволяет собирать часто используемые объекты в отдельной категории. Категорию временного хранилища можно заполнить любым виджетом, в настоящее время отображаемым в форме, перетащив их из формы и опуская на область виджетов. Эти виджеты можно использовать так же, как и любые другие виджеты, но они также могут содержать дочерние виджеты. Откройте контекстное меню над виджетом, чтобы изменить его имя или удалить его из временного хранилища.

Концепция макетов в Qt

Макет используется для упорядочивания и управления элементами, составляющими пользовательский интерфейс. Qt предоставляет ряд классов для автоматической обработки макетов — QHBoxLayout, QVBoxLayout, QGridLayout и QFormLayout. Эти классы решают задачу автоматической компоновки виджетов, обеспечивая предсказуемое поведение пользовательского интерфейса. К счастью, знание классов макетов не требуется для компоновки виджетов с помощью Qt Designer. Вместо этого выберите один из вариантов Разместить горизонтально, Разместить в сетке и т. д. из контекстного меню.

Каждый виджет Qt имеет рекомендуемый размер, известный как sizeHint(). Управляющий макетом попытается изменить размер виджета, чтобы соответствовать его подсказке размера. В некоторых случаях нет необходимости в изменении размера. Например, высота QLineEdit всегда имеет фиксированное значение, зависящее от размера и стиля шрифта. В других случаях может потребоваться изменение размера, например, ширина QLineEdit или ширина и высота виджетов просмотра элементов. Здесь приходят на помощь ограничения размера виджетов — minimumSize и maximumSize ограничения. Эти свойства можно задать в редакторе свойств. Например, чтобы переопределить значение sizeHint() по умолчанию, просто задайте minimumSize и maximumSize одинаковым значением. Или, чтобы использовать текущий размер как значение ограничения размера, выберите один из вариантов Ограничение размера из контекстного меню виджета. Затем макет гарантирует, что эти ограничения соблюдаются. Чтобы контролировать размер виджетов с помощью кода, вы можете переопределить sizeHint() в своем коде.

На приведенном ниже снимке экрана показано разбиение базового пользовательского интерфейса, разработанного с помощью сетки. Координаты на снимке экрана показывают положение каждого виджета в сетке.

Примечание: Внутри сетки объекты QPushButton фактически вложены. Кнопки справа сначала размещаются в QVBoxLayout; кнопки внизу — сначала в QHBoxLayout. Наконец, они помещаются в координаты (1,2) и (2,1) QGridLayout.

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

Макеты Qt помогают при:

  1. Изменении размера пользовательского интерфейса для соответствия различным размерам окон.
  2. Изменении размера элементов внутри пользовательского интерфейса для соответствия различным локалям.
  3. Расположении элементов в соответствии с рекомендациями по макетам для различных платформ.

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

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

Диалоговое окно на английском языке Диалоговое окно на французском языке

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

Для более технического взгляда на классы макетов Qt обратитесь к документации по Управлению макетами.

© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-5.13/designer-to-know.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API