В моем рабочем столе Qt мне нужно диалоговое окно для ввода пользователем некоторых данных. Поэтому я выбираю: Новый файл | Qt | Designer form class, затем Dialog с нижними кнопками и назовите его соответствующим образом.Макет для настраиваемого диалогового окна
В конструкторе нового диалога я создаю несколько меток и редактирование строк и добавляю их в макет сетки. Как это:
ui->setupUi(this);
partNoLabel = new QLabel(tr("&Part No:"));
partDescLabel = new QLabel(tr("&Description:"));
partNoLineEdit = new QLineEdit();
partDescLineEdit = new QLineEdit();
partNoLabel->setBuddy(partNoLineEdit);
partDescLabel->setBuddy(partDescLineEdit);
supplierLabel = new QLabel(tr("Supplier"));
supPartNoLabel = new QLabel(tr("Part No"));
supplierLineEdit = new QLineEdit();
supPartNoLineEdit = new QLineEdit();
supplierLabel->setBuddy(supplierLineEdit);
supPartNoLabel->setBuddy(supPartNoLineEdit);
QGridLayout *dlgLayout = new QGridLayout;
dlgLayout->addWidget(partNoLabel, 0, 0);
dlgLayout->addWidget(partNoLineEdit, 0, 1);
dlgLayout->addWidget(partDescLabel, 1, 0);
dlgLayout->addWidget(partDescLineEdit, 1, 1);
dlgLayout->addWidget(supplierLabel, 2, 0);
dlgLayout->addWidget(supplierLineEdit, 2, 1);
dlgLayout->addWidget(supPartNoLabel, 3, 0);
dlgLayout->addWidget(supPartNoLineEdit, 3, 1);
setLayout(dlgLayout);
setWindowTitle("New part");
Когда отображается, хотя - это выглядит ужасно:
и при изменении размеров, выглядит хуже:
Это явно неприемлемо, как я исправить это, или как я должен был это сделать?
Фиксированная версия:
Я последовал совету Габор Angyal и делали это вручную, удаление и добавление коробки кнопку в коде. Я также изменил с помощью FormLayout, как описано в этой статье: http://doc.qt.digia.com/qq/qq25-formlayout.html
Полученная форма выглядит так:
, который до сих пор нуждается в подправить или два, но, по крайней мере, кнопки находятся в правой место: D.
Вам нужно найти макет, содержащий ваши кнопки (ok/cancel) и составить новую вертикальную рамку, которая будет содержать макет сетки и расположение кнопок. – vahancho
Спасибо. Лучше ли вообще не использовать кнопку «внизу» в диалоговом окне настройки? –