Qt Designer; затруднение размещения виджетов в правильном родителе
Используя Qt Designer, я сделал пару QFrames друг в друге, каждый из которых имеет горизонтальную компоновку. Их таблица стилей предисловием, что у них не должно быть разницы и отступов. Это означает, что в представлении Qt Designers, а также в конечном результате между QFrames не видно места.
С помощью drag-and-drop я могу разместить виджеты в окне, он показывает синюю линию, в которой он будет размещен (в макете). Однако невозможно добавить другой QFrame в родительский элемент QFrame, который я не вижу (и, таким образом, он падает). На правой панели также есть дерево, но при отбрасывании родителя он автоматически переходит в один из дочерних элементов...
Пример: у меня есть эта настройка:
QMainWindow
- QWidget
- QFrame (parent)
- QFrame (child)
- QFrame (child)
Добавление нового фрейма, что бы я ни пытался, дает мне:
QMainWindow
- QWidget
- QFrame (parent)
- QFrame (child)
- QFrame (child)
- QFrame (new child)
Но я действительно хочу:
QMainWindow
- QWidget
- QFrame (parent)
- QFrame (child)
- QFrame (child)
- QFrame (new parent)
Есть ли какая-либо функция, которую я не обнаружил, чтобы точно разместить новые виджеты?
Ответы
Ответ 1
Вы можете использовать окно Object Inspector, но вы, похоже, не можете вставить его в QFrame с закрытым расположением.
Итак, учитывая ваш макет:
QMainWindow
- QWidget
- QFrame (A)
- QFrame (B)
- QFrame (C)
- QFrame (D)
Выберите QFrame D в окне Object Inspector и вырежьте его, щелкните правой кнопкой мыши QWidget и разбейте макет (ctrl-0), затем вставьте. Затем повторно примените макет.
Ответ 2
Один из способов обхода, который я использовал, - это выбрать виджет, который я хочу добавить, добавить к нему макет, перетащить виджет и снова удалить его. Таким образом, по крайней мере, я получаю его в правильном виджетах.
Ответ 3
В Qt Creator 4.3 мне также трудно перетащить элемент в макет, который еще не имеет элементов.
Самый простой способ заставить его работать - добавить Layout
в форму. Затем перетащите элемент из Toolbox
на макет в Object Inspecter Window
.
Что добавит элемент в Layout
.
Неизвестно, работает ли оно более старым для более старых версий Qt Creator.