Qt Вступление

Привет всем! Так как некоторым тема Qt оказалась интересной, попробую написать n-ное количество статеек на эту тему.

«Qt — кросс-платформенный инструментарий разработки ПО. Существуют версии библиотеки для Microsoft Windows, систем класса UNIX с графической подсистемой X11, iOS, Android, Mac OS X, Microsoft Windows CE, QNX, встраиваемых Linux-систем и платформы S60. Также идёт портирование на Haiku. Распространяется по лицензиям GPL, LGPL и коммерческой.»

Qt позволяет создавать мощный и красивый пользовательский интерфейс, работать с сетью, мультимедиа, XML, скриптами, базами данных и многим многим другим…

Для того чтобы начать писать программы с использованием Qt достаточно скачать их SDK с qt.nokia.com. Качаем. Устанавливаем, при установке не помешает отметить галочки для установки Qt Designer, Qt Linguist и исходников (без них может не получится скомпилировать какой-нибудь плагин). Запускаем Qt Creator:


(Я в данный момент сижу под маком, но от этого смысл не меняется)

Чтобы создать новый проект, кликаем по Create Project, выбираем Qt Widget Project-> Qt Gui Application:


Вводим имя проекта и куда его сохранять:


Здесь оставляем все как есть:


Здесь тоже:


Ну и здесь наконец кликаем Done:


Открывается главное окно:


Открываем main.cpp, и пишем:
#include <QtGui/QApplication>
#include <QPushButton>

int main(int argc, char *argv[])
{
    QApplication a(argc, argv);

    QPushButton *button = new QPushButton("Test"); // Создаем кнопочку с текстом Test
    button->show(); // Показываем ее

    return a.exec();
}



(Если хотите сделать оформление как у меня, то кликните на иконку поиска (показал стрелочкой), далее Configure, Text Editor и выберите Vim dark)

Все! жмем либо зеленый треугольник слева, либо QTRL+R, и если все нормально то видим следующее окошко:


На сегодня все. В следующий раз расскажу про сигналы и слоты, как создавать формы и может что нибудь еще.
  • +4
  • 15 ноября 2011, 20:41
  • RomiX

Комментарии (29)

RSS свернуть / развернуть
Интересно. Буду почитывать. Может пригодится. А в этой IDE только с Qt работать можно?

P.S. Поставьте тег
0
по умолчанию да, но если сильно хочется, можно прикрутить и чтонить другое, там много всяких настроек
можно и из visual studio под qt писать, правда это не так удобно, у creator'a редактор удобнее
0
я писал под встраевыемые системы (кортекс М3, gcc) на сях. не так удобно как во всяких тюнигованых эклипсах и специализорованных кейлах/иарах, зато удобно и привычно =)
0
Хм, интересно стало. Неужели писать софт под нокию S60 просто? И можно юзать камеру/BT/WiFi?
0
насчет камеры/bt/wi-fi щас не скажу, а так да не очень то и сложно
0
либа здорово абстрагирует Вас от целевой платформы. Для специфики типа камеры/бт/вифи/акселерометра есть QtMobility.
0
Надо будет попробовать, давно уже хотел что-нибудь под свой телефон написать! Если вдруг есть толковый гайд, поделитесь плиз.
0
многое разжевано в нете. есть крупные русскоязычные форумы. хорошо ищется по клчевым словам ;)
так же не стОит забывать про документацию и примеры из состава Qt SDK.
0
Да-да. Вы пишите, а мы почитаем. Всегда интересно узнать что-то новое.
0
Разбирался с Qt на Linuxе:) Штука удобная. Но для наших применений есть одна проблемка: она организует только внешний интерфейс(еще 3D и сеть чуть-чуть). А связь с периферией придется пистать самому(покрайней мере так было около полугода назад). Поэтому для окошек я остался верен седьмой делфе с компонентами ком-порта.
0
  • avatar
  • kest
  • 15 ноября 2011, 22:06
либа и так разраслась уже до безобразия. ещё и компортов там не хватало. Но это дело компенсируется qextserialport, qserialdevice, libusb и прочими. выбор есть.
0
Хех… Ну раз уж пошла такая пьянка попиарюсь чуть чуть (исключительно ради расширения кругозора интересующихся=)) Справедливости ради надо отметить, что не Qt единым. Почему-то говоря про кросс-платформенное программирование на C++ обычно подразумевают именно Qt, хотя есть ведь и другие хорошие средства. В частности есть библиотека wxWidgets, которая для большинства задач ничуть не хуже, чем Qt, а кое в чём её превосходит. На ней, например, написан KiCad и Code::Blocks. В своё время я написал несколько статей на эту тему. Выкладывать в сообщество я их не буду, но тут ссылочки оставлю:
Почему а использую wxWidgets
Quick Start
Основы построение программы на базе wxWidgets

Ну и остальные записи по тегу
+2
Мне тоже wxWidgets очень нравиться. Только я для ПК больше на Ruby пишу.
wxRuby еще удобнее чем просто wxWidgets:)
0
как работать с ком портом?
0
Так вот!
0
0
Как? достаточно просто. ровно так же как и с файлом.
Чем? я пользую qextserialport.sourceforge.net/ другого не пробовал, всё устраивает.
0
сорри, проект переехал сюда: code.google.com/p/qextserialport/
0
«Даешь COM порт!»
0
  • avatar
  • Zov
  • 16 ноября 2011, 12:03
Вставлю свои 5 копеек. Делал несколько проeктов на Qt под самсунговский s3c2440 + 64МБ ОЗУ и под обычный писюк. Скомпилял Qt со своими оптимизированными настройками — всё летает. А со сторонней библиотекой для последовательного порта вышла лажа (название писать не буду здесь, может уже пофиксили всё), хотя на обычном ПК всё работало отлично, пришлось пользоваться напрямую линуховые вызовы. Насчет связи с периферией — не так уж и сложно написать обёртку над апи (если конечно дрова уже есть), так что это не недостаток. Вообще хорошая либа, приятно иметь дело.
0
А какая в Qt справка, никакие Delphi/Builder и рядом не лежали!
0
Вот сам тоже сел изучать сию библиотеку. Но никак не удаётся собрать драйвер MySQL под неё :( столько инструкций перечитал…
0
Если под винду, то пользуйся компилятором msvc, и сборкой Qt для соответствующего компилятора.
0
Тоже нужно было для одного проекта, на сайте есть инструкция. Или тут.
0
там собирать то нечего, просто открываете pro файл creator'ом либо студией, дописываете пути до include mysql и либы libmysql, потом собираете и всё!
0
Спасибо за статью, помогла начать с Qt. Жду продолжения ))
0
  • avatar
  • tugo
  • 17 ноября 2011, 00:19
Надо тоже попробовать поковырять.
0
Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.