Создание графических интерфейсов пользователя с использованием Qt 5.12 (Методические пособия по C++ Г.С.Иванова 3 части)
Описание файла
PDF-файл из архива "Методические пособия по C++ Г.С.Иванова 3 части", который расположен в категории "". Всё это находится в предмете "объектно-ориентированное программирование (ооп)" из 2 семестр, которые можно найти в файловом архиве МГТУ им. Н.Э.Баумана. Не смотря на прямую связь этого архива с МГТУ им. Н.Э.Баумана, его также можно найти и в других разделах. .
Просмотр PDF-файла онлайн
Текст из PDF
Московский государственный технический университетимени Н.Э. БауманаФакультет «Информатика и вычислительная техника»Кафедра «Компьютерные системы и сети»Г.С. ИвановаСоздание графических интерфейсовпользователя с использованиембиблиотеки Qt 5.12.1Электронное учебное изданиеУчебное пособиепо дисциплине «Объектно-ориентированное программирование»Москва(С) 2019 МГТУ им. Н.Э. БАУМАНАУДК 004.432Рецензент: к.т.н., доцент Новик Наталия ВладимировнаИванова Г.С.Учебное пособие содержит описание средств библиотеки Qt 5.12, используемых для создания графических пользовательских интерфейсов к программам наязыке С++. При создании Windows-приложений в ранних версиях среды MicrosoftVisual Studio на языке С++ для этой цели традиционно использовалась библиотекаMFC. Однако эта библиотека была изначально рассчитана не на объектное, а наструктурное программирование, и, соответственно, ее применение при объектномпрограммировании излишне трудоемко, а используемые абстракции воспринимаются, как искусственные.Библиотека Qt фирмы Qt Company лишена этого недостатка, кроме того онаявляется многоплатформенной и, помимо Windows, поддерживает Linux, Mac OSX, Solaris, AIX, Irix и другие клоны Unix с X11, что очень важно при современномсостоянии программирования в этих операционных системах.Для студентов МГТУ имени Н.Э.
Баумана, обучающихся по программам бакалавриата по направлениям 09.03.01 «Информатика и вычислительная техника»и 09.03.03 «Прикладная информатика». Однако пособие может быть полезно истудентам других направлений, изучающим С++.Рекомендовано НМС МГТУ им. Н.Э. БауманаУчебное изданиеИванова Галина СергеевнаСоздание графических интерфейсов пользователя с использованиембиблиотеки Qt 5.12.© 2019 МГТУ имени Н.Э. БауманаОГЛАВЛЕНИЕВВЕДЕНИЕ.............................................................................................................
4ГЛАВА 1 ОСНОВЫ СОЗДАНИЯ ПРИЛОЖЕНИЙ СИСПОЛЬЗОВАНИЕМ КЛАССОВ БИБЛИОТЕКИ QT ..................... 51.1 Структура простейшей программы с Qt интерфейсом........................................... 51.1.1 Создание интерфейса из совокупности объектов библиотечных классов .... 51.1.2 Разработка собственного класса окна приложения ......................................... 81.1.3 Создание русскоязычного интерфейса в Qt .....................................................
91.2 Особенности компиляции-сборки программ, использующих библиотеку Qt ... 111.2.1 Сборка приложений в командном режиме ..................................................... 121.2.2 Сборка Qt-программ в среде Microsoft Visual Studio .................................... 151.2.3 Qt Designer. Быстрая разработка прототипов интерфейсов .......................... 161.2.4 Интегрированная среда разработки Qt Creator .............................................. 241.3 Информационная поддержка библиотеки Qt Assistant ........................................ 30ГЛАВА 2 СРЕДСТВА БИБЛИОТЕКИ QT .................................................... 322.1 Виджеты и их свойства............................................................................................ 322.2 Управление расположением виджетов в окне ......................................................
352.3 Механизм слотов и сигналов .................................................................................. 392.3.1 Создание новых слотов и установка связи сигналов со слотами ................. 402.3.2 Генерация новых сигналов ............................................................................... 442.4 Обработка событий. Рисование. События таймера .............................................. 47ЛИТЕРАТУРА ..................................................................................................... 68ПРИЛОЖЕНИЕ А. УСТАНОВКА QT НА КОМПЬЮТЕР ........................ 69ВВЕДЕНИЕСредства Qt – библиотека классов C++ и набор инструментального программногообеспечения – предназначены для построения многоплатформенных приложений с графическим интерфейсом.
Они позволяют создавать приложения, которые могут работать подуправлением Windows Vista/Windows 7/Windows 10, Mac OS X, Linux, Solaris, HP-UX идругих версий Unix.В состав библиотеки классов Qt входят: классы, обеспечивающие построение оконного графического интерфейса пользователя; классы для работы с 2-х и 3-х мерной графикой; классы, реализующие поддержку основных графических форматов храненияизображений; классы-шаблоны динамических массивов и других структурных типов данных; классы для работы с процессами и потоками; классы для работы с XML и пр.Краткая история создания библиотеки. Работа над библиотекой была начатаХаавардом Нордом (главный управляющий компании Trolltech) и Эриком Чамбенгом(президент компании Trolltech) в 1990 г. К 1993 году они завершили разработку первогографического ядра и приступили к созданию визуальных компонентов – виджетов(widgets).
4 марта 1994 года ими была зарегистрирована компания под названием "QuasarTechnologies", которое затем было преобразовано в "Troll Tech", а затем и в "Trolltech".Первый выход в свет библиотеки Qt состоялся в мае 1995 года. Qt тогда могла работать как под управлением Windows, так и под управлением Unix, предоставляя разработчикам единый API (Прикладной Интерфейс).
Библиотека была выпущена под двумя лицензиями: коммерческой – для разработки коммерческого программного обеспечения исвободной – для разработки программ с открытым исходным кодом.Завоевание рынка происходило медленно, но количество приверженцев библиотекинеуклонно росло. Из года в год компания ежегодно удваивала количество продаж. Успехобеспечивался высоким качеством библиотеки, стройной, хорошо продуманной структурой компонентов и простотой их применения. Менее чем за десятилетие Qt превратиласьиз малоизвестной библиотеки в программный продукт, используемый тысячами и тысячами разработчиков во всем мире. Наиболее известными примерами разработки на Qt являются: программа-коммуникатор Skype, медиа-плеер VLC, Google Earth.Одновременно увеличивалось количество и улучшалось качество средств разработкипрограмм с использованием Qt.
В настоящее время для создания программ, использующих Qt может использоваться специализированная среда разработки – Qt Creator, в составкоторой входит визуальный проектировщик интерфейсов – Qt Designer и другие необходимые средства..В настоящее время права на Qt принадлежит фирме Qt Company, которая продолжает развивать две версии программного обеспечения: коммерческую и бесплатную.ГЛАВА 1 ОСНОВЫ СОЗДАНИЯ ПРИЛОЖЕНИЙ С ИСПОЛЬЗОВАНИЕМ КЛАССОВ БИБЛИОТЕКИ QTЗначительная часть классов библиотеки Qt использует отсутствующие в языке С++средства, реализация которых требует применения дополнительного препроцессора – мета-объектного компилятора (MOC).
Следовательно, прежде, чем программа, использующая классы Qt, будет передана препроцессору и компилятору языка С++, ее должен обработать MOC.Разработчики библиотеки предусматривают несколько технологий создания программ с использованием библиотеки классов Qt. Всего поддерживаются три варианта: создание файлов программы в любых текстовых редакторах без специализированных сред и их компиляция, компоновка, запуск и отладка «вручную» в командном режиме операционной системы; создание программы «под Windows» в среде Microsoft Visual Studio (начиная сверсии 2008 г.), при этом, как в ручном варианте, не поддерживается визуальноепостроение интерфейса, но используется возможность работы в текстовом редакторе Visual Studio, а также отладка программ с использованием встроенного всреду отладчика; создание программы в специализированной полноценной многоплатформеннойсреде Qt Creator, полностью обеспечивающей процесс создания приложений длянаиболее распространенных операционных систем: Windows XP/Vista/Windows7, Mac OS X, Linux, Solaris, HP-UX и других версий Unix.Поддерживаются и различные комбинации перечисленных вариантов.
Так фирмапредоставляет отдельно от среды Qt Creator средство визуальной разработки интерфейсовприложений – Qt Designer. Это средство может использоваться как при работе вне средпрограммирования, так и на подготовительном этапе перед передачей проекта в VisualStudio.1.1 Структура простейшей программы с Qt-интерфейсомСоздание интерфейса с применением средств библиотеки Qt продемонстрируем напрограмме, выдающей на экран традиционное приветствие «Hello!» или в русскоязычномварианте «Привет!».1.1.1 Создание интерфейса из совокупности объектов библиотечных классовБиблиотека классов Qt предоставляет разработчику множество уже готовых интерфейсных компонентов, которые в Qt, как и в Linux, принято называть виджетами.В простейшем случае виджеты Qt могут встраиваться в программный код без построения специального класса, объект которого соответствовал бы окну.Традиционно интерфейс приложения Hello выдает на экран приветствие и ожидаетсигнала завершения работы.
В оконном варианте это предполагает использование некоторого элемента, который может визуализировать строку приветствия, например метки, икнопки завершения. При нажатии на эту кнопку приложение должно завершать свою работу (рисунок 1.1).Рисунок 1.1 – Вид окна приложенияПример 1.1. Приложение Hello. Интеграция объектов классов Qt без построенияспециального класса окна.В начале программы посредством оператора #include подключаем заголовочныйфайл модуля, содержащего описание используемых интерфейсных классов Qt.Аналогично любой, построенной по объектной технологии и событийно управляемой программе, приложение Hello минимально должно включать два объекта: объект-приложение; объект-окно приложения.Объект-приложение создается как объект класса QApplication.