небольшое preview к новому пакету на базе кросплатформенной библиотеки QT (http://trolltech.com)
QT - это набор библиотек(и заголочных файлов на языке С++ к ним), которые позволяют работать с GUI оболочкой операционной системы, с файлами, сетью, OpenGL, некоторыми устройствами(принтер, экран, клавиатура, мышь и прочие), со всевозможным Media контентом(графика и звук), а так же XML, HTML и другими популярными форматами.
на рисунке показано место, занимаемое QT в классической цепочки Программа->OS->Железо, т.е. через сервисы предоставляемые библиотекой приложение с одинаковым успехом может быть собрано и запущено под Windows(как Desctop так и CE), Linux, MacOS и прочие платформы, для которых портированна данная библиотека.
Компиляция и сборка осуществляются с помощью GCC, что вместе с QT позволяет собирать программы для коммерческого и некоммерческого использования без каких либо ограничений.
Чуть ниже показан пример простой програмки, которая выводит сумму двух чисел.
code_8732.txt
Сборка проекта под Windows:
а тут тоже самое, но под Linux:
Редактировалось 1 раз(а), последний 2016-11-04 23:56:34
Этот топик читают: Гость
Администрация
Ответов: 15295
Рейтинг: 1519
|
|||
карма: 27 |
| ||
файлы: 3 | screenshot-test_linux.png [4.9KB] [752], screenshot-test_win.png [3.5KB] [657], code_8732.txt [589B] [363] |
Ответов: 1891
Рейтинг: 110
|
|||
Dilma, писал(а): небольшое preview к новому пакету на базе кросплатформенной библиотеки QT (http://trolltech.com)Dilma, а как скоро можно будет посмотреть новый пакет и будет ли поддержка доступа к БД? |
|||
карма: 0 |
|
Ответов: 499
Рейтинг: 1
|
|||
Dilma писал(а): Компиляция и сборка осуществляются с помощью GCC, что вместе с QT позволяет собирать программы для коммерческого и некоммерческого использования без каких либо ограничений.поправка. если делать продукт, предназначенный для коммерческого распостранения и/или с закрытием исходников - то необходимо приобрести лицензию на использование Qt и Qtopia. для опенсорсных программ лицензии не требуется. |
|||
карма: 0 |
|
Администрация
Ответов: 15295
Рейтинг: 1519
|
|||
Alexbootch писал(а): будет ли поддержка доступа к БД?QT как минимум работает с MySQL и SQLite HikeR писал(а): то необходимо приобрести лицензию на использование Qt и Qtopiaугу. Подробнее можно прочесть тут http://trolltech.com/products/qt/licenses/licensing/licensingoverview ------------ Дoбавленo: нашел в справке список поставляемых по умолчанию драйверов:
|
|||
карма: 27 |
|
Главный модератор
Ответов: 2999
Рейтинг: 396
|
|||
Интересно у REALbasic'a свой Framework или чей-то?
------------ Дoбавленo: Dilma, действительно ли станет возможным компиляция исполняемых кодов из под Windows для Linux и MacOSX |
|||
карма: 6 |
|
Администрация
Ответов: 15295
Рейтинг: 1519
|
|||
вероятно это возможно. Однако что касается Linux, то там достаточно полученный исходник с make файлами запаковать в tar.gz и написать в README процедуру сборки(qmake & make). Либо сделать свой build.sh с этими командами - таким образом ставятся многие программы в Linux.
|
|||
карма: 27 |
|
Ответов: 5446
Рейтинг: 323
|
|||
Dilma, вот я одного не пойму: а нафига связываться с (полу)коммерческой QT, когда есть бесплатная и открытая библиотека wxWidgets?
|
|||
карма: 1 |
|
Ответов: 499
Рейтинг: 1
|
|||
QT качественнее ;)
------------ Дoбавленo: Nic писал(а): действительно ли станет возможным компиляция исполняемых кодов из под Windows для Linux и MacOSX Dilma писал(а): вероятно это возможно.это на самом деле возможно. необходим кросс-компилятор с нужными билиотеками, например готовый mingw. только вот проверить полученный результат сразу не получится ;) видимо, правильнее будет собрать и отладить програму под win, а потом уже переносить коды под никс. |
|||
карма: 0 |
|
Администрация
Ответов: 15295
Рейтинг: 1519
|
|||
сравнение Qt и wxWidgets
http://www.linux.org.ru/view-message.jsp?msgid=1528844 создается примерно такое же ощущение как с Delphi vs FPC. Документацию на wxWidgets не видел, но на Qt она полнее некуда, а это большой плюс |
|||
карма: 27 |
|
Ответов: 5446
Рейтинг: 323
|
|||
Документация есть, в нескольких форматах (hlp, chm, набор html-файлов) плюс учебные примеры (почти на каждый класс есть сой пример) плюс примеры "больших" программ.
А что до источника (linux.org.ru) - я тут воздержусь от комментариев, ибо ресурс известен специфичностью мышления своего контингента. ------------ Дoбавленo: Но, конечно, хозяин-барин. Если код пакета hiQT будет открытым - от можно будет и попробовать wx туда прикуртить |
|||
карма: 1 |
|
Администрация
Ответов: 15295
Рейтинг: 1519
|
|||
а код пакета может может быть не открытым?)
|
|||
карма: 27 |
|
Ответов: 5446
Рейтинг: 323
|
|||
код пакета - нет (пока ), кодогенератор - да, запросто
|
|||
карма: 1 |
|
Главный модератор
Ответов: 2999
Рейтинг: 396
|
|||
Метод lng.project_name возвращает мусор:
hientrypoint.hws писал(а):
println('#include <' + code(lng.project_name()) + '.moc>') qt4_test.cpp писал(а):
#include <„ZТ?.moc> Поправил руками эту строку: qt4_test.cpp писал(а):
#include <qt4_test.moc> и после некоторых поисков компилировал примерчик при помощи приложенного батника: ------------ Дoбавленo: Вот вариант компиляции для MacOSX 10.4: |
|||
карма: 6 |
| ||
файлы: 8 | qt4_test.sha [600B] [572], mingw-build.zip [1KB] [389], q4_test.jpg [7.7KB] [951], q4_test_macosx.png [7KB] [943], 6.jpg [27.8KB] [702], sql_db.bat.rar [143B] [425], sqlite3.exe.rar [149.8KB] [516], qt.his.rar [352B] [439] |
Ответов: 5446
Рейтинг: 323
|
|||
Dilma, занялся я переделкой твоего QT-пакета под WX (ради здоровой конкуренции). Изучение файла direct.inc подтвердило мои подозрения, что ф-ция _toCode там не просто так приписана, а с расчётом на строго-типизированные языки. И при изучении этой функции возник вопрос: а почему str->int (data.GetSubType = int, toType = str) делается через QString::number, а не через местный вариант atoi?
|
|||
карма: 1 |
|
Администрация
Ответов: 15295
Рейтинг: 1519
|
|||
Nic, для правильного интерфесного взаимодействия нужно качать последнюю версию среды. Кроме того в последнем варианте приложение QT собирается, компилируется, линкуется и запускается всего лишь нажатием одной кнопки Запуск как и приложение пакета Delphi.
Еще вопрос: каким образом исходник QT собирается под MacOS? А так же интерисует какие пакеты ставить и откуда их брать(в Linux скажем все это входит в дистрибутив). iarspider, QString::number взято из примеров, идущих в составе пакета. Nic, еще хотелось бы проверить работает ли задание стилей у визуальных элементов на MacOS как показано на рисунке ниже: код элемента Edit с рисунка: code_8802.txt ------------ Дoбавленo: iarspider, кстате поддерживает ли WX работу со стилями визуальных элементов? |
|||
карма: 27 |
| ||
файлы: 2 | qt_styles.png [5.5KB] [342], code_8802.txt [244B] [287] |