Вертикальное размещение QVBoxLayout

   
На этом шаге рассмотрим вертикальное размещение QVBoxLayout.

   
Компоновка QVBoxLayout унаследована от QBoxLayout и упорядочивает все виджеты только по вертикали, сверху вниз. В остальном она ничем не отличается от классов QBoxLayout и QHBoxLayout. Окно программы, которая упорядочивает виджеты при помощи объекта класса QVBoxLayout, показано на рис. 1.


Рис.1. Размещение кнопок по вертикали
Содержание файла будет следующее:

#include <QApplication>
#include <QWidget>
#include <QPushButton>
#include <QVBoxLayout>

int main(int argc, char** argv)
{
QApplication app(argc, argv);
app.setApplicationDisplayName("QHBoxLayout");
QWidget wgt;
//Cоздаются три кнопки A, B и C
//(указатели pcmdA, pcmdB и pcmdC)
QPushButton* pcmdA = new QPushButton("A");
QPushButton* pcmdB = new QPushButton("B");
QPushButton* pcmdC = new QPushButton("C");
//Создается объект класса QVBoxLayout
//для вертикального размещения дочерних виджетов
QVBoxLayout* phbxLayout = new QVBoxLayout;
//Метод QLayout::setMargin() устанавливает
//толщину рамки 10 пикселов
phbxLayout->setMargin(10);
//Метод QLayout::setSpacing() задает
//расстояние между виджетами равное 20 пикселам
phbxLayout->setSpacing(20);
//Три вызова метода QLayout::addWidget() добавляют
//виджеты кнопок в компоновку
phbxLayout->addWidget(pcmdA);
phbxLayout->addWidget(pcmdB);
phbxLayout->addWidget(pcmdC);
wgt.setLayout(phbxLayout);
wgt.show();
return app.exec();
}

   
Файлы примера можно взять Предыдущий шаг
Содержание
Следующий шаг



Вы можете оставить комментарий, или Трекбэк с вашего сайта.

Оставить комментарий