Qt wiki will be updated on October 12th 2023 starting at 11:30 AM (EEST) and the maintenance will last around 2-3 hours. During the maintenance the site will be unavailable.

Getting Started Programming with Qt/ru

From Qt Wiki
Jump to navigation Jump to search

h1. THIS PAGE IS WORK IN PROGRESS.

Первые шаги программирования с QT

Добро пожаловать в мир QT - мир кросплаторменных инструментов графического интерфейса пользователя (GUI). В этом начальном руководстве, мы научим вас базовым навыкам QT реализовав простое приложение Блокнот.

Hello Notepad

В первом примере мы просто создадим и покажем элемент редактирования текста в рамке окна на экране. Пример покажет самую простую программу на QT которая имеет графический интерфейс. text edit

Вот текст программы:

 #include <QApplication>
 #include <QTextEdit>

int main(int argv, char *'''args)
 {
 QApplication app(argv, args);

 QTextEdit textEdit;
 textEdit.show();

 return app.exec();
 }

Давайте рассмотрим каждую строчку программы. В первых двух строчках, мы подключаем заголовочные файлы "QApplication":http://doc.qt.nokia.com/4.7/qapplication.html и "QTextEdit":http://doc.qt.nokia.com/4.7/qtextedit.html, которые являются двумя классами необходимыми для данного примера. Каждый класс QT имеет соответствующий одноименный заголовочный файл.

Строка 6 создает объект "QApplication":http://doc.qt.nokia.com/4.7/qapplication.html. Этот объект управляет ресурсами приложения и необходим для запуска любой QT программы с графическим интерфейсом. В параметрах необходимо передавать argv и args потому что Qt обрабатывает некоторые аргументы командной строки.

Строка 8 создает объект "QTextEdit":http://doc.qt.nokia.com/4.7/qtextedit.html. Элемент редактирования текста является визуальной составляющей GUI. В QT, мы называем такие элементы виджетами. Примерами других виджетов являются полосы прокрутки, надписи, радио кнопки. Виджет так же может быть контейнером для других виджетов; диалог или главное окно приложения, например.

Строка 9 показывает элемент редактирования текста на экране в своем собственном окне-рамке. Так как виджеты могут служить как контейнеры (например "QMainWindow":http://doc.qt.nokia.com/4.7/qmainwindow.html, который содержит панели инструментов, меню, строку состояния, и некоторые другие виджеты), возможно показать виджет в своем собственном окне. Виджеты невидимы по умолчанию; функция "show()":http://doc.qt.nokia.com/4.7/qwidget.html#show делает виджет видимым.

Строка 11 вводит "QApplication":http://doc.qt.nokia.com/4.7/qapplication.html в свой цикл сообщений. В работающем QT приложении события генерируются и отправляются виджетам приложения. Примером события является нажатие кнопки мыши или клавиатуры. Когда вы печатаете текст в виджете редактирования текста, он получает события нажатия кнопки и отвечает отрисовкой напечатанного текста.

Для запуска приложения, откройте командную строку и войдите в директорию в которой у вас находится .cpp файл программы. Следующие команды собирут программу.

 qmake -project
 qmake
 make

Это оставит исполняемый файл в вашей директории (на Windows вам может понадобиться использовать nmake вместо make. Также исполняемый файл будет помещен в подкаталоги debug или release). qmake- средство для сборки QT приложений, которое читает конфигурационный файл. qmake создает этот файл когда мы передаем -project параметр в командной строке. This will leave an executable in the part1 directory (note that on Windows, you may have to use nmake instead of make. Also, the executable will be placed in part1/debug or part1/release). qmake is Qt's build tool, which takes a configuration file. qmake generates this for us when given the -project argument. Используя конфигурационный файл (расширение .pro), qmake создает make файл, который построит программу для вас. Мы посмотрим, как создавать свои собственные .pro файлы позже.


Подробнее: Виджеты и геометрия окон: "Window and Dialog Widgets":http://doc.qt.nokia.com/4.7/application-windows.html