Qt — первая программа
Qt — первая программа
Минимальное Qt Widgets приложение на Qt 6 с CMake. Полный обзор фреймворка: Qt. Сборка: CMake — первая программа.
Установка
- Windows/macOS/Linux: qt.io/download — Qt 6.x, компонент Qt Widgets;
- или пакетный менеджер ОС (
apt install qt6-base-devна Ubuntu).
Запомните путь к Qt, например C:/Qt/6.7.0/msvc2019_64.
Структура
qt-hello/
├── CMakeLists.txt
└── main.cpp
CMakeLists.txt
cmake_minimum_required(VERSION 3.20)
project(qt_hello LANGUAGES CXX)
set(CMAKE_CXX_STANDARD 17)
set(CMAKE_AUTOMOC ON)
set(CMAKE_AUTORCC ON)
set(CMAKE_AUTOUIC ON)
find_package(Qt6 REQUIRED COMPONENTS Widgets)
add_executable(qt_hello main.cpp)
target_link_libraries(qt_hello PRIVATE Qt6::Widgets)
Конфигурация (подставьте свой путь):
cmake -S . -B build -DCMAKE_PREFIX_PATH="C:/Qt/6.7.0/msvc2019_64"
cmake --build build
main.cpp
#include <QApplication>
#include <QPushButton>
#include <QVBoxLayout>
#include <QWidget>
#include <QLabel>
int main(int argc, char* argv[]) {
QApplication app(argc, argv);
QWidget window;
window.setWindowTitle("Qt Hello");
auto* label = new QLabel("Нажмите кнопку", &window);
auto* button = new QPushButton("Click", &window);
QObject::connect(button, &QPushButton::clicked, [label]() {
label->setText("Привет из Qt!");
});
auto* layout = new QVBoxLayout(&window);
layout->addWidget(label);
layout->addWidget(button);
window.resize(320, 120);
window.show();
return app.exec();
}
Сигналы и слоты
connect(отправитель, сигнал, получатель, слот) — реактивная связь без жёсткой зависимости. Лямбда-слот удобен для прототипов; в больших проектах — отдельные методы классов.
Дальше
- Qt Creator — визуальный редактор
.ui; - Qt Quick (QML) — современный UI (см. 27.md);
- тесты логики: Google Test, UI —
QTest.
Десктоп в экосистеме ITUniverse: /encyclopedia/4-code-dev/4-11-desktopnye-prilozheniya/intro.
См. также
Другие статьи этого же раздела в боковом меню (как на странице «О разделе»). C++ как язык системного программирования - ключевые принципы, область применения и инженерные требования к коду. Экосистема приложений на C++ - области применения языка от системного ПО до высоконагруженных вычислений. Фундамент для начинающего программиста - что повторить, как работать, чего ожидать. Гайд по установке и настройке с написанием первой программы и её запуском. Директива препроцессора include используется для подключения заголовочных файлов в исходный код. Она сообщает компилятору вставить содержимое указанного файла в текущее место перед началом компиляции. Конфигурация — это набор правил и переменных, которые управляют процессом превращения исходного текста в исполняемый продукт. Примеры простых и полезных консольных приложений с демонстрацией концепций языка. Минимальный кроссплатформенный проект C++17 с CMake и сборкой из командной строки. Модульные тесты с GTest и Catch2 в CMake-проекте — отдельный test target и запуск. Набор советов, правил, принципов и обычаев в разработке на этом языке. Типизация, набор правил определения типа данных значений языка. Операторы и выражения в C++ - семантика операций, приоритеты и построение корректной вычислительной логики.C++ - язык системного программирования
Экосистема приложений на C++
Что требуется знать перед началом изучения языка программирования C++
Первая программа на C++
Начало работы с C++
Конфигурация и сборка в C++
Простые приложения на C++
CMake — первая программа
Google Test и Catch2 в C++
Рекомендации по разработке на C++
Типы данных в C++
Операторы и выражения в C++