Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

OOP_C++ / 14

.htm
Скачиваний:
22
Добавлен:
02.02.2015
Размер:
8.02 Кб
Скачать

14 - Разработка программ графического интерфейса пользователя Содержание     Предыдущее занятие     Следующее занятие

Занятие 14 Разработка программ графического интерфейса пользователя 1 Программирование, управляемое событиями Программы графического интерфейса пользователя, в том числе операционные системы и графические оболочки, построены на событийно-ориентированных принципах.

Событие представляет собой механизм, посредством которого нечто происходящее в системе связывается с конкретным кодом, обрабатывающим событие. Событийно-ориентированное программирование (Event driven programming, EDP), или программирование, управляемое событиями, предполагает, что программа не ограничивает последовательности дальнейших событий, чаще всего инициируемых пользователем.

В этом случае любая программа, независимо от ее сложности, представляет собой цикл получения и обработки событий, поступающих от различных внешних устройств, а также генерируемых активными объектами внутри программы.

Если событие относится к определенному объекту, для этого объекта вызывается специальная функция-обработчик события. Подобные функции должны быть заранее зарегистрированы.

2 Библиотека Qt и ее использование для создания программ графического интерфейса пользователя Дополнительная задача к курсовому проекту может быть связано с созданием программы графического интерфейса пользователя. Существует несколько вариантов реализации подобной задачи. Все эти варианты к сожалению не являются стандартными, поскольку стандарт языка C++ не включает средств создания графического интерфейса пользователя.

Среди разнообразных библиотек C++, которые разрешают создавать программы графического интерфейса пользователя, особое место сядет библиотека Qt, которая разработанная норвежской кампанией TROLLTECH. Эта библиотека имеет определенные преимущества в сравнении с аналогичными библиотеками, которые было создано раньше (MFC, VCL и др.):

библиотека Qt разрешает создавать программы, которые могут быть перекомпiльованi в разных операционных средах (Windows, Linux, Apple и др.);

библиотека разрешает использовать стандартные компиляторы C++;

начиная из версии 4, программисты имеют возможность использовать бесплатную Windows-версiю Qt для проектов с открытой вихiднимкодом.

Бiблiотка распространяется с качественной документацией и численными примерами применения. Вариант библиотеки для проектов с открытым кодом можно бесплатно загрузить с сайту www.trolltech.com. На этом же сайтi можно найти инструкцию относительно установления библиотеки на компьютере

Существует коммерческая версия библиотеки, которая качественно интегрируется с средой MS Visual C++.NET. Однако для создания программ, которые використовуюь открытую версию Qt, нужны другие компиляторы, например программный пакет MinGW, что можно бесплатно загрузить с сайту www.mingw.org.

Если загрузка и налаштування библиотеки уже было осуществлено на другом компьютере, необходимое программное обеспечение можно скопировать, сохраняя относительные пути к соответствующих тек. Наиболее частое компiлюючу систему MinGW и библиотеку Qt устанавливают на диск C:. В таком случае соответствующие теки MinGW и qt-win-opensource-src-4.1.4 следует создать на диске C:. другого компьютера.

Дале для успешной работы с библиотекой следует прибавить к сменной окружению PATH пути к соответствующих тек bin обоих программным пакетам. Это можно, например, сделать с помощью окна Environment Variables, доступ к которого можно получить через Свойства программы, дальше Advanced и Environment Variables. В последнем окне избираем System variables и редактируем значения сменной PATH. К ней после точки с запятой следует прибавить

c:\qt-win-opensource-src-4.1.4\bin;c:\MinGW\bin;

После этого следует закрыть соответствующие окна и перезагруззить компьютер

2 Пример простейшей программы Предположим, необходимо создать простейшую. программу графического интерфейса пользователя. Интерфейс программы представлен окном с единственной кнопкой, нажатие которой обеспечивает завершение работы программы.

Для создания нового проекта следует в отдельной папке создать файл с расширением .cpp следующего содержания:

#include <QApplication> #include <QPushButton> #include <QWidget> int main(int argc, char *argv[]) { QApplication app(argc, argv); QWidget window; window.resize(200, 120); QPushButton quit("Quit", &window); quit.setGeometry(10, 40, 180, 40); QObject::connect(&quit, SIGNAL(clicked()), &app, SLOT(quit())); window.show(); return app.exec(); } Создается объект-приложение и объект-окно. Создается и включается в окно кнопка с указанными размерами. Для кнопки задаются координаты верхнего левого угла и начальные размеры с помощью функции setGeometry(). Далее осуществляется связывание события clicked() кнопки с обработчиком quit(). Для этого вызывается статическая функция connect() класса QObject. Функция exec() организует цикл получения и обработки событий.

Далее следует воспользоваться утилитой (консольной программой) qmake с опцией project:

qmake -project

С помощью этой утилиты создается новый файл проекта. дальше последовательно запускаем эту же самую утилиту без параметров и программу mingw32-make:

qmake -project

mingw32-makeии

Если компиляция завершилась успешно, в папке Debug проекта создается новый файл с расширением. exe. Его можно загрузить на выполнение.

 

Содержание     Предыдущее занятие     Следующее занятие

 

© 2001 - 2006 Иванов Л.В.

Соседние файлы в папке OOP_C++