С каждым годом становится все больше операционных систем, и потому разработчикам все труднее удовлетворять потребности пользователей. Три самые популярные компьютерные платформы - Windows, Linux и Mac OS, а также три мобильные - Android, iOS и Windows Mobile - продолжают активно бороться между собой. А это значит, что качественное приложение должно работать на всех основных платформах.
Справиться с этой проблемой помогает кроссплатформенная разработка. Об одной из самых популярных кроссплатформенных сред разработки - Qt Creator - и пойдёт речь в этой статье. Мы рассмотрим как выполняется установка и настройка Qt Creator, а также как работать в Qt Creator.
Содержание статьи
- Что такое Qt Creator
- Установка Qt Creator
- Настройка Qt Creator
- Установка компонентов Qt Creator
- Работа с Qt Creator - первый проект
- Выводы
Что такое Qt Creator
Qt Creator (не так давно имевший название Greenhouse) - это одна из самых распространенных кроссплатформенных IDE. Ее плюсы - удобство, быстрота работы, а также - свободность, так как это ПО с открытым исходным кодом. Поддерживаются такие языки, как C, С++, QML.
Программа была написана компанией под названием Trolltech, которая в полной мере выполнила цель создания среды - работу с графическим фреймворком Qt. Удобный графический интерфейс с поддержкой Qt Widgets и QML, а также большое число поддерживаемых компиляторов позволяют быстро и удобно создать свое кроссплатформенное приложение.
Главная задача этой IDE - обеспечить наиболее быструю кроссплатформенную разработку, используя собственный фреймворк. Благодаря этому разработчики получают прекрасную возможность не писать приложения нативно (т. е. отдельно под каждую платформу), а создать общий код, и, возможно, подогнать его под особенности используемых ОС.
Qt Creator также включает в себя утилиту Qt Designer, что позволяет обработать внешний вид окна приложения, добавляя и перетаскивая элементы (аналогично Windows Forms в Visual Studio). В качестве систем сборки используются qmake, cmake и autotools.
Установка Qt Creator
Итак, пора рассмотреть как установить Qt Creator. Если для Windows разработчики позаботились и сделали оффлайн-установщик, то в Linux 32-bit этой возможности не предусмотрено. Поэтому во время установки вам может потребоваться стабильное интернет-соединение (~20-30 минут). Для начала скачаем установщик:
После окончания загрузки переходим в папку с файлом, нажимаем правой кнопкой мыши и выбираем пункт "Свойства".
Теперь перейдем на вкладку "Права" и поставим галочку "Разрешить запуск этого файла в качестве программы".
Запускаем программу.
Теперь нажимаем "Next".
Здесь необходимо выбрать существующий аккаунт или создать его. Данное действие необходимо для проверки лицензии (коммерческой или некоммерческой).
Нажимаем "Next".
Выбираем директорию, в которой будет находиться Qt. Важно, чтобы в пути не было кириллицы и пробелов!
В этом меню находится выбор компонентов. К примеру, можно выбрать установку инструментов для разработки на Android, или же исходных компонентов (это нужно для статической сборки, если кому-то это нужно - напишите в комментариях, и я напишу отдельную статью). Если Вы не уверены, нужны Вам эти компоненты или нет, оставьте их пока так - даже после установки Qt будет возможным удаление и добавление элементов.
В этом окне принимаем лицензию. Жмем "Next".
Если Вы готовы, начинайте установку. У Вас запросят пароль суперпользователя (sudo), после чего начнется скачивание и извлечение файлов. Альтернативный способ - установка через терминал. Для начала необходимо обновить список пакетов.
sudo apt update
Скачиваем и устанавливаем Qt:
sudo apt install qt5-default
Теперь установка Qt Creator:
sudo apt install qtcreator
И, если нужно, исходники.
sudo apt install qtbase5-examples qtdeclarative5-examples
Настройка Qt Creator
После окончания установки перезагрузите компьютер и запустите Qt Creator. Перейдите в меню "Инструменты" -> "Параметры".
Здесь следует рассмотреть несколько вкладок.
1. Среда - это настройка внешнего вида самой IDE, а также изменение сочетаний клавиш и управление внешними утилитами.
2. Текстовый редактор - здесь идет настройка внешнего вида, шрифтов и расцветки редактора.
3. C++ - подсветка синтаксиса, работа с расширениями файлов и UI (т. е. формами).
4. Android - здесь собраны пути к необходимым инструментам, а также в этом меню настраиваются подключаемые или виртуальные устройства.
Установка компонентов Qt Creator
Если вдруг так случилось, что Вы забыли установить какой-то компонент, или, наоборот, хотите его удалить, то на помощь придет Qt Maintenance Tool. Это инструмент, позволяющий управлять всеми компонентами Qt Creator.
Чтобы запустить его, перейдите в меню приложений, выберите пункт "Разработка" -> "Qt Maintenance Tool".
Выберите необходимый пункт (Удалить/добавить компоненты, обновить компоненты или удалить Qt). После выполните необходимые операции и закройте окно.
Работа с Qt Creator - первый проект
Ну что же, час пробил! Установка Qt Creator завершена. Пора сделать свое первое кроссплатформенное приложение на Linux, а затем скомпилировать его на Windows. Пусть это будет... программа, выводящая иконку Qt, кнопку и надпись, на которую по нажатию кнопки будет выводиться случайная фраза. Проект несложный, и, конечно же, кроссплатформенный!
Для начала откроем среду разработки. Нажмем "Файл" -> "Создать файл или проект...". Выберем приложение Qt Widgets - его быстро и удобно сделать. А название ему - "Cross-Platphorm". Вот как!
Комплект - по умолчанию. Главное окно тоже оставляем без изменений. Создаем проект.
Для начала необходимо настроить форму - главное окно приложения. По умолчанию оно пустое, но это не останется надолго.
Перейдем в папку "Формы" -> "mainwindow.ui". Откроется окно Qt Designer:
Удаляем панель меню и панель инструментов на форму, нажав правой кнопкой мыши и выбрав соответствующий пункт. Теперь перетаскиваем элементы Graphics View, Push Button и Label таким образом:
Чтобы изменить текст, дважды кликните по элементу. В свойствах Label (справа) выбираем расположение текста по вертикали и по горизонтали - вертикальное.
Теперь пора разобраться с выводом иконки. Перейдем в редактор, слева кликнем по любой папке правой кнопкой мыши и выберем "Добавить новый...". Теперь нажимаем "Qt" -> "Qt Resource File". Имя - res. В открывшемся окне нажимаем "Добавить" -> "Добавить префикс", а после добавления - "Добавить файлы". Выбираем файл, а в появившемся окне "Неверное размещение файла" кликаем "Копировать".
Получилось! Сохраняем все. Снова открываем форму. Кликаем правой кнопкой мыши по Graphics View, выбираем "styleSheet..." -> "Добавить ресурс" -> "background-image". В левой части появившегося окна выбираем prefix1, а в правой - нашу картинку. Нажимаем "ОК". Настраиваем длину и ширину.
Все! Теперь можно приступать к коду. Клик правой кнопкой мыши по кнопке открывает контекстное меню, теперь надо нажать "Перейти к слоту..." -> "clicked()". В окне набираем следующий код:
Или вы можете скачать полный проект на GitHub. Работа с Qt Creator завершена, нажимаем на значок зеленой стрелки слева, и ждем запуска программы (если стрелка серая, сначала нажмите на значок молотка). Запустилось! Ура!
Выводы
Установка и настройка Qt Creator завершена. Теперь вы сможете создавать свои программы под огромное число платформ, оставляя код нетронутым! Кстати, установив Qt на Windows, вы сможете скомпилировать этот проект и там. Удачи вам!
А чё, вместо этой лианы нормально то можно было написать?
void MainWindow::on_pushButton_clicked()
{
char *message [5] = { "Все будет хорошо!",
"Будет новый комп!",
"Завтра получишь 1 биткойн!",
"Ого! У тебя будет 5 версий Linux!",
"Все будет радужно!" };
ui->label->setText(message[rand() % 5]);
}
Конечно, так можно. Но мне лично проще разбить на строки, так удобнее для восприятия =)
А мне наоборот, так понятнее. Каждому свое. =%))))
Так всем понятно. Наверное автор не знает что такое указатель!!!
К тому же это не мастер-класс по С++, а руководство по установке программы.
А вот как он не в Xfce или KDE, a в Gnome или Cinnamon работает?
Так же, абсолютно. Есть множество программ, написанных в Qt для Linux. Можно распространять на любую из версий =)
Индексация массивов в C/C++ начинается с нуля, для нормальной работы необходимо заменить 5 на 4, или добавить строку в код.
Не угадал.
Остаток от деления на пять не может быть больше четырех.
Это плохой стиль написания кода.
Вот это
ui->label->setText(message[rand() % 5]);
плохо
правильней так
int i = rand() % 5
ui->label->setText(message[i]);
Повышается читаемость и понимание, что тут происходит.
Автор не вводи людей в заблуждение на счёт только онлайн установщика. Есть установщик оффлайн и для х64 и для х86. Просто с версии 5.6 под линукс все версии для х64. У тебя на скриншоте верся 5.5 последняя для линукс х86. Всё есть в архивных репах http://download.qt.io/archive/qt/ У них сайт просто запутанный, нужно внимательней смотреть.
Статья ну очень старая.
Во первых сейчас изменился сайт и найти установочник надо по другому.
Во вторых устанавливать надо в папку opt и от пользователя root. Т.к. иногда могут не находится библиотеки даже при компиляции. На 5.5 такое наблюдал.
А в треьих онлайн инсталятор не зависим отверсий и лучше самому выбирать и ставить версии с длинной поддержкой
По моему сначала стоит проверить налие Qt Creator в репах своего дистрибутива. В debian например есть (пакет qtcreator)
Огромное спасибо!
У меня Ubuntu 20.04 Gnome 3.36.2, поставил Qt Creator 4.12.3, проблема в том, что хоткеи работают только с русской расскладкой, в других программах такой проблемы нет, не родскажите что делать?
Ха интересно, я даже с помощью этого чуда слепил несколько окон. У меня теперь вопрос как сделанное мной приложение запустить на другом компьютере без танцев с бубном.
Кто знает где почитать как из обычного приложения сделать портативное то есть AppImage (самый старый и более и менее замороченный способ запуска приложений на разных ОС Linux).