2.1 Создать с помощью мастера
Откройте интерфейс Qt Creator и выберите «Новый проект» или выберите строку меню [Файл] — пункт меню [Новый файл или проект].
Появится диалоговое окно New Project, выберите Приложение Qt Widgets,
Нажмите кнопку [Выбрать], появится следующее диалоговое окно.
Задайте имя проекта и путь, следуйте указаниям мастера к следующему шагу,
Выберите пакет сборки
Мастер добавит класс, который по умолчанию наследуется от CMainWindow, где вы можете изменить имя класса и базовый класс. Базовыми классами по умолчанию являются QMainWindow, QWidget и QDialog. Мы можем выбрать QWidget (аналогично пустому окну). Здесь мы можем создать интерфейс без пользовательского интерфейса и перейти к следующему шагу.
Система по умолчанию добавит нам main.cpp, mywidget.cpp, mywidget.h и файл проекта .pro.Нажмите Finish, чтобы создать настольную программу Qt.
Добавить пустой проект
Выберите [выбрать], чтобы перейти к следующему шагу. Задайте имя и путь проекта -> выберите набор для компиляции -> измените информацию о классе -> завершите (шаги такие же, как указано выше), сгенерируйте пустой проект. Добавьте файл в пустой проект: щелкните правой кнопкой мыши имя проекта, чтобы открыть контекстное меню, выберите [Добавить новый файл].
Появится диалоговое окно нового файла
В этом диалоговом окне выберите добавляемый класс или файл и завершите добавление файла в соответствии с мастером.
-
- .proдокумент
Формат файла .pro приложения, созданного с помощью мастера Qt, выглядит следующим образом:
QT += основной графический интерфейс //включенные модули
GreaterThan(QT_MAJOR_VERSION, 4): QT += widgets //Модуль виджета включается только в том случае, если версия выше Qt4
TARGET = QtFirst //Имя приложения Сгенерированное имя программы .exe
TEMPLATE = app //шаблон шаблона приложения
ИСТОЧНИКИ += main.cpp\ // исходный файл
mywidget.cpp
HEADERS += mywidget.h // Заголовочный файл
.pro Это файл проекта (project), который представляет собой файл конфигурации, автоматически генерируемый qmake для создания make-файлов.. Файл .pro записывается следующим образом:
- Примечания
Начните с «#» и закончите этой строкой.
-
Переменные шаблона сообщают qmake, какой make-файл генерировать для этого приложения. Доступны следующие варианты:TEMPLATE = app
- app - Makefile для создания приложения. Это значение по умолчанию, поэтому, если шаблон не указан, он будет использоваться.
- lib — make-файл для сборки библиотеки.
- vcapp — создает файл проекта приложения VisualStudio.
- vclib — файл проекта VisualStudio для сборки библиотеки.
- subdirs — это специальный шаблон, который создает make-файл, который может перейти в определенный каталог, сгенерировать make-файл для файла проекта и вызвать для него make-файл.
-
#Указываем имя сгенерированного приложения:
TARGET = QtDemo
- #Заголовочные файлы, включенные в проект
HEADERS += include/painter.h
- #Файл дизайна .ui, включенный в проект
FORMS += forms/painter.ui
- #Исходные файлы, включенные в проект
SOURCES += sources/main.cpp sources
- #Файлы ресурсов, включенные в проект
RESOURCES += qrc/painter.qrc
- greaterThan(QT_MAJOR_VERSION, 4): QT += widgets
Смысл этого утверждения в том, что если QT_MAJOR_VERSION больше 4 (то есть используемая в данный момент версия Qt5 и выше), необходимо добавить модуль widgets. Если проекту нужна только поддержка Qt5, вы также можете напрямую добавить «виджеты QT +=». Однако для обеспечения совместимости кода лучше всего писать в соответствии с инструкциями, сгенерированными QtCreator.
- #Информация о конфигурации
CONFIG используется, чтобы сообщить qmake о конфигурации приложения.
CONFIG += c++11 //Используйте возможности c++11
Здесь используется «+=», потому что мы добавляем наши параметры конфигурации к уже существующим. Это безопаснее, чем использовать "=" для замены всех уже указанных параметров.
-
- один из самых простыхQt-приложение
В основной функции входа
#include "widget.h"
#include <QApplication>
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
Widget w;
w.show();
return a.exec();
}
объяснять:
-
Стандартный заголовочный файл объявления имени класса, предоставляемый системой Qt, не имеет суффикса .h.
-
Класс Qt соответствует заголовочному файлу, а имя класса — это имя заголовочного файла.
-
Класс приложения QApplication
- Управление потоком управления и основными настройками приложений с графическим интерфейсом.
- Это основа всего фонового управления Qt.Содержит основной цикл событий, в котором данные из оконной системы и других ресурсовВся обработка событий и планирование. это также обрабатываетИнициализация и завершение приложения,иОбеспечивает управление разговором.
- Для любого приложения с графическим интерфейсом, использующего Qt, существует ровно один объект QApplication, независимо от того, имеет ли приложение 0, 1, 2 или более окон одновременно.
-
a.exec()
Программа входит в цикл сообщений, ожидая ответа на ввод пользователя. Здесь main() передает управление Qt, Qt завершает обработку события, а значение exec() возвращается при выходе из приложения.В exec() Qt принимает и обрабатывает пользовательские и системные события и передает их соответствующим виджетам.