Главная » Просмотр файлов » Создание графических интерфейсов пользователя с использованием Qt 5.12

Создание графических интерфейсов пользователя с использованием Qt 5.12 (1245345), страница 3

Файл №1245345 Создание графических интерфейсов пользователя с использованием Qt 5.12 (Методические пособия по C++ Г.С.Иванова 3 части) 3 страницаСоздание графических интерфейсов пользователя с использованием Qt 5.12 (1245345) страница 32021-07-27СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла (страница 3)

Следует иметь в виду, что помимо средств создания национальных интерфейсов в Qt предусмотрены средства разработки интернациональных приложений свыбором языка интерфейса. С этой целью предлагаются специальные утилиты и приложение для составления переводов – Qt Linguist [1].1.2 Особенности компиляции-сборки программ, использующих библиотеку QtПри создании библиотеки Qt разработчики несколько расширили возможности языка С++, добавив к стандартному набору операторов и макросов С++ специальные макросы, которые обеспечивают передачу и обработку сигналов, хранение информации о типевремени выполнения и динамические свойства объектов и т.п.Реализацию механизмов библиотеки Qt, отсутствующих в С++, обеспечивает специализированный препроцессор Qt – Meta-object Compiler – Мета-объектный компилятор(MOC). Этот препроцессор обрабатывает исходный текст программы, подставляя вместоспециальных макросов Qt реализацию заказанных свойств на С++ (рисунок 1.6).Как следует из схемы, MOC обрабатывает только заголовочные файлы, содержащиеописание классов, наследуемых от классов Qt.

В результате работы МОС в описание объявляемых классов включаются вспомогательные методы классов Qt. Реализация этих методов помещается в файл moс_<Имя класса>.cpp, который подключается к проекту посредством автоматически добавляемого #include. Тексты основных методов в файле реализации класса при этом не затрагивается.После выполнения MOC на выходе получается исходный текст программы на «чистом» С++. Окончательная компиляция и сборка программы используемым компиляторомC++ и компоновщиком, доступными в рамках платформы, где осуществляется компиляция-сборка.#include#include<Имя класса>.hОписаниеклассапотомкаQWidget#includeMOCompilermoc_<Имя класса>.cppРеализацияиспользуемыхмеханизмовQt<Имя класса>.cppРеализацияклассапотомкаQWidgetС++ Compiler<Имя программы>.obj<Имя программы>.obj<Имя программы>.obj<Имя программы>.cppОсновнаяпрограммаДвоичныеОсновнаяОсновнаятекстыпрограммапрограммачастейпрограммыКомпоновщик<Имя программы>.exeПриложениеРисунок 1.6 – Схема сборки приложения при наличии в нем макросов Qt1.2.1 Сборка приложений в командном режимеРазработка приложений на многих платформах (таких как Linux, Solaris, HP-UX идр.) часто выполняется без специализированных сред.

При этом программист создаеттекстовые модули программы в простейших текстовых редакторах типа Блокнота, а компиляция, сборка и отладка программ осуществляется командами вызова соответствующихпрограмм: компилятора, компоновщика и (при наличии) отладчика, вводимыми непосредственно в командной строке консоли. С таким режимом работы целесообразно познакомиться и в Windows.Как уже упоминалось выше помимо cpp- и h-файлов с текстом программы для создания приложения необходим файл проекта, который должен содержать сведения окомпиляции и сборке программы. Операции по созданию файла проекта, а также его компиляции-сборки в соответствии с названием раздела выполним в командном (консольном)режиме.Для работы в командном режиме необходимо, чтобы переменные окружения, указывающие местоположение используемых пакетов и тип компилятора, который будет использован при сборке Qt-проектов, были правильно определены.

В Windows для правильного определения переменных окружения следует войти в консольный режим через команду, предусмотренную при установке Qt в меню Пуск операционной системы. Так для64-разряной конфигурации VS 2017 выбираем пункт:Пуск\Qt..\5.12.1\MSVC 2017(64-bit)\Qt5.12.1(MSVC 2017 64-bit).После этого, чтобы облегчить работу в консольном режиме целесообразно вызватьфайловый менеджер Far (или другой, например WinCommander). При этом понадобитсяуказать полный путь к приложению.

Так если менеджер Far установлен в папке ProgramFiles (х86) на диске C, то команда должна выглядеть так:″C:\Program Files (х86)\Far\Far.exe″Примечание. Здесь и далее двойные кавычки при вводе команды необходимы, поскольку имя каталога Program Files (х86) состоит из нескольких слов, разделенных пробелами.Для установки путей к программам среды Visual Studio 2017 следует выполнить командный файл vcvarsall.bat, если среда VS2017 установлена на диск C, то запуск командного файла на выполнение выглядит так:″С:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Auxiliary\Build\vcvarsall.bat″ x86-amd64 .Затем следует объявить текущей ту папку, в которой находятся cpp- и h- файлы программы. Для этого переходим в нее посредством Far или вводим в командную строку команду изменения директории, например:cd С:\Examples\.Далее последовательность действий по компиляции-сборке приложения выглядитследующим образом.1. Создание файла-проекта приложения.

Для создания файла-проекта, включающего файлы текущей (!) директории, используют специальную консольную программу Qt –qmake, которой в качестве опции передается параметр -project:qmake-projectЕсли имя папки, в которой находится программа, Hello, то в результате работыqmake в текущей папке появится файл проекта Hello.pro, со следующим содержимым:TEMPLATE = appTARGET = helloDEPENDPATH += .INCLUDEPATH += .# InputHEADERS += win.hSOURCES += main.cpp# тип исполняемого файла – .exe# имя создаваемого исполняемого файла# дополнительные пути разрешения ссылок – не заданы# дополнительные пути поиска файлов – не заданы# комментарий – исходные файлыwin.cppСодержимое файла-проекта определяет параметры процесса компиляции-сборки исполняемого файла из исходных файлов проекта и может включать переменные, перечисленные в таблице 1.1.Таблица 1.1 – Переменные файла проектаПеременнаяTEMPLATETARGETDESTDIRCONFIGQTОглавлениеШаблон, используемый в проекте. Он определяет, что будет на выходе процесса сборки: приложение, библиотека или подключаемый модуль.Имя результата сборки: приложения, библиотеки или модуля.

По умолчаниюсовпадает с именем каталога.Каталог, в который будет помещен исполняемый или бинарный файл, полученный в результате сборки. По умолчанию зависит от параметра CONFIG:CONFIG=debug – результат помещается в подкаталог debug текущего каталога, CONFIG=release – результат помещается в подкаталог release текущего каталога.Общие параметры настройки проекта, например создать отладочный (debug)или конечный (realease) варианты приложения. По умолчанию создается отладочный вариант приложения.Qt-ориентированные параметры конфигурации, например указывающие наиспользование классов графического интерфейса пользователя (Graphics UserПеременнаяTEMPLATETARGETDESTDIRHEADERSSOURCESFORMSRESOURCESDEF_FILERC_FILEОглавлениеШаблон, используемый в проекте.

Он определяет, что будет на выходе процесса сборки: приложение, библиотека или подключаемый модуль.Имя результата сборки: приложения, библиотеки или модуля. По умолчаниюсовпадает с именем каталога.Каталог, в который будет помещен исполняемый или бинарный файл, полученный в результате сборки. По умолчанию зависит от параметра CONFIG:CONFIG=debug – результат помещается в подкаталог debug текущего каталога, CONFIG=release – результат помещается в подкаталог release текущего каталога.Interface – GUI) или на использование средств OpenGL – OPENGL.Список заголовочных файлов (.h), используемых при сборке проекта.Список файлов с исходным кодом (.cpp), которые используются при сборкепроекта.Список файлов форм, полученных с использованием Qt Designer (.ui).Список файлов ресурсов (.rc), которые включаются в конечный проект (пиктограммы, картинки и т.п.).Файл .def, который линкуется вместе с приложением (только для Windows).Файл ресурса для приложения (только для Windows).В простейших случаях автоматически полученный файл проекта можно использовать при отладке приложения.

Однако если при проектировании интерфейса были использованы макросы Qt, например QOBJECT, то в файл проекта необходимо добавить:QT += gui widgets# используемые средства Qt: графический интерфейсЕсли же необходимо создать итоговый вариант реализации, файл проекта надо отредактировать так:TEMPLATE = app# тип исполняемого файла – .exeTARGET = Hello# имя исполняемого файла – HelloQT += gui widgets# используемые средства Qt: графический интерфейсCONFIG += release# создание итогового варианта реализации# Input# комментарий – исходные файлыHEADERS += win.hSOURCES += main.cpp win.cpp2.

Создание файла управления компиляцией-сборкой. После создания и редактирования файла проекта Hello.pro повторно вызываем процедуру qmake, передавая ей в качестве параметра имя файла проекта:qmake Hello.proТеперь qmake на базе файла проекта формирует файл Makefile, определяющий фактический порядок компиляции-сборки программы, местоположение компилятора и необходимых библиотек.Если все прошло нормально, то в текущей директории появится файл Makefile, дваподкаталога debug и release и несколько вспомогательных файлов.3. Компиляция-сборка приложения. Не меняя текущей директории, вводим командувызова процедуры компиляции-сборки make: nmake – если используется компилятор-компоновщик Microsoft Visual C++; mingw32-make – для вызова компилятора mingw.При этом в обоих случаях надо быть уверенным, что путь к папке bin, содержащейиспользуемую программу, в системе установлен.

При необходимости путь можно добавить к предусмотренным в системе, например так:set PATH=C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\bin;%PATH%Результат сборки программы – приложение Hello.exe и промежуточные файлы процесса компиляции/сборки, которые в зависимости от задания будут добавлены в каталогdebug или release.4. Выполнение программы. Запускаем программу Hello.exe и на экране получаем окно приложения.

Характеристики

Тип файла
PDF-файл
Размер
6,43 Mb
Тип материала
Высшее учебное заведение

Список файлов книги

Свежие статьи
Популярно сейчас
Как Вы думаете, сколько людей до Вас делали точно такое же задание? 99% студентов выполняют точно такие же задания, как и их предшественники год назад. Найдите нужный учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
6376
Авторов
на СтудИзбе
309
Средний доход
с одного платного файла
Обучение Подробнее