Какие виджеты Qt4 я должен использовать и как приблизить интерфейс в стиле ленты? - PullRequest
1 голос
/ 09 ноября 2010

Я пытаюсь создать интерфейс для моего приложения, используя Qt Designer. Я хочу, чтобы он имел вкладки, набор элементов управления в стиле ленты сверху и область в стиле MDI с закрепленными окнами, которые я планирую показывать и скрывать в зависимости от того, какая вкладка ленты в данный момент выбрана. Я только начинаю с Qt Designer, а также с самого Qt4, поэтому я не совсем уверен, как настроить окно, какие виджеты и макеты я должен использовать и т. Д.

Совершенно очевидно, что вверху должен быть QTabWidget, но я не уверен насчет нижнего. Должен ли я использовать QFrame? QMdiArea? Док-виджет? Какие макеты я могу использовать, чтобы убедиться, что виджет вкладки имеет фиксированную высоту, постоянно занимает всю ширину окна и масштабируется нижняя область при изменении размера окна?

Я прочитал в руководстве, что макеты сплиттера позволяют вручную регулировать размер содержащихся в них виджетов, но я не могу перетащить размер блока виджета после помещения их в сплиттер. Таким образом, я не могу установить область ниже ленты. Кто-нибудь, помогите?

Ответы [ 2 ]

3 голосов
/ 09 ноября 2010

Вы должны заглянуть в QMainWindow и проверить несколько утилит, которые он может вам предоставить (Панель инструментов, StatusBar, DockWidgets, CentralWidget и т. Д ...).

Я понял, что ваш случай таков, что у вас всегда будет видимая область MDI, и что панель вкладок будет использоваться только для изменения dockWidgets. Вот как бы я это сделал.

CentralWidget mainWindow будет QWidget с QVBoxLayout , содержащим виджет QTabBar первым (вверх) и QMdiArea под ним. Размеры должны обрабатываться автоматически.

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

Надеюсь, это поможет.

1 голос
/ 09 ноября 2010

VTK Designer, который построен на Qt, имеет Ленточный интерфейс . Вы можете взглянуть на исходный код для справки.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...