⭐Qt. Иерархия классов. Структура программы с графическим интерфейсом.
В Qt все построено на объектах, главным базовым классом является QObject. Все классы, имеющие сигналы и слоты в Qt унаследованы от него. При множественном наследовании, если в иерархии планируется наличие класса QObject, его имя должно стоять первым в списке базовых классов, иначе метаобъектный компилятор Qt moc (Meta object compiler) будет ругаться.
#include <QApplication>
#include <QLabel>
#include <QPushButton>
#include <QVBoxLayout>
#include <QWidget>
int main(int argc, char *argv[]) {
QApplication app(argc, argv);
// Создание главного окна
QWidget window;
window.setWindowTitle("Пример программы");
// Создание метки
QLabel label("Привет, Qt!");
// Создание кнопки
QPushButton button("Нажми меня");
// Создание компоновщика
QVBoxLayout layout(&window);
// Добавление метки и кнопки в компоновщик
layout.addWidget(&label);
layout.addWidget(&button);
// Установка связей между сигналами и слотами
QObject::connect(&button, &QPushButton::clicked, &label, &QLabel::setText);
// Отображение главного окна
window.show();
// Запуск цикла обработки событий
return app.exec();
}ut
PreviousQt. Основные графические виджеты. Связь кода и разметки. Компоновка виджетов.NextQt. Событийная модель: слоты и сигналы. Автоматическое и ручное связывание.Пример нажатия на кнопку
Last updated