Getting Started Programming with Qt/ru: Difference between revisions

From Qt Wiki
Jump to navigation Jump to search
No edit summary
No edit summary
Line 1: Line 1:
h1. THIS PAGE IS WORK IN PROGRESS.


= Первые шаги программирования с QT =
Добро пожаловать в мир QT - мир кросплаторменных инструментов графического интерфейса пользователя (GUI). В этом начальном руководстве, мы научим вас базовым навыкам QT реализовав простое приложение Блокнот.
== Hello Notepad ==
В первом примере мы просто создадим и покажем элемент редактирования текста в рамке окна на экране. Пример покажет самую простую программу на QT которая имеет графический интерфейс.<br />[[Image:http://doc.qt.nokia.com/4.7/images/gs1.png|text edit]]
Вот текст программы:<br /><code><br /> #include &lt;QApplication&amp;gt;<br /> #include &lt;QTextEdit&amp;gt;
int main(int argv, char *'''args)<br /> {<br /> QApplication app(argv, args);
<br /> QTextEdit textEdit;<br /> textEdit.show();
<br /> return app.exec&amp;amp;#40;&amp;#41;;<br /> }<br /></code>
<br />Давайте рассмотрим каждую строчку программы. В первых двух строчках, мы подключаем заголовочные файлы &quot;QApplication&amp;quot;:http://doc.qt.nokia.com/4.7/qapplication.html и &quot;QTextEdit&amp;quot;:http://doc.qt.nokia.com/4.7/qtextedit.html, которые являются двумя классами необходимыми для данного примера. Каждый класс QT имеет соответствующий одноименный заголовочный файл.
<br />Строка 6 создает объект &quot;QApplication&amp;quot;:http://doc.qt.nokia.com/4.7/qapplication.html. Этот объект управляет ресурсами приложения и необходим для запуска любой QT программы с графическим интерфейсом. В параметрах необходимо передавать argv и args потому что Qt обрабатывает некоторые аргументы командной строки.
<br />Строка 8 создает объект &quot;QTextEdit&amp;quot;:http://doc.qt.nokia.com/4.7/qtextedit.html. Элемент редактирования текста является визуальной составляющей GUI. В QT, мы называем такие элементы виджетами. Примерами других виджетов являются полосы прокрутки, надписи, радио кнопки. Виджет так же может быть контейнером для других виджетов; диалог или главное окно приложения, например.
<br />Строка 9 показывает элемент редактирования текста на экране в своем собственном окне-рамке. Так как виджеты могут служить как контейнеры (например &quot;QMainWindow&amp;quot;:http://doc.qt.nokia.com/4.7/qmainwindow.html, который содержит панели инструментов, меню, строку состояния, и некоторые другие виджеты), возможно показать виджет в своем собственном окне. Виджеты невидимы по умолчанию; функция &quot;show()&quot;:http://doc.qt.nokia.com/4.7/qwidget.html#show делает виджет видимым.
<br />Строка 11 вводит &quot;QApplication&amp;quot;:http://doc.qt.nokia.com/4.7/qapplication.html в свой цикл сообщений. В работающем QT приложении события генерируются и отправляются виджетам приложения. Примером события является нажатие кнопки мыши или клавиатуры. Когда вы печатаете текст в виджете редактирования текста, он получает события нажатия кнопки и отвечает отрисовкой напечатанного текста.
<br />Для запуска приложения, откройте командную строку и войдите в директорию в которой у вас находится .cpp файл программы. Следующие команды собирут программу.
<br /><code><br /> qmake <s>project<br /> qmake<br /> make<br /></code>
<br />Это оставит исполняемый файл в вашей директории (на Windows вам может понадобиться использовать nmake вместо make. Также исполняемый файл будет помещен в подкаталоги debug или release). qmake</s> средство для сборки QT приложений, которое читает конфигурационный файл. qmake создает этот файл когда мы передаем -project параметр в командной строке.<br />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 файлы позже.
<br />Подробнее:<br />''' Виджеты и геометрия окон: &quot;Window and Dialog Widgets&amp;quot;:http://doc.qt.nokia.com/4.7/application-windows.html<br />* События и обработка событий: &quot;The Event System&amp;quot;:http://doc.qt.nokia.com/4.7/eventsandfilters.html

Revision as of 06:58, 24 February 2015