Как стать автором
Обновить

Комментарии 50

Спасибо за пост. Есть вопрос не совсем по теме — а почему не Qt?
Наверно потому, что за Qt нужно платить для использования её в коммерческих приложениях.
А Gtk бесплатна/доступна по-любому.
Здесь соглашусь. Не посмотрел на лицезию Gtk, приношу свои извинения.

Но ведь кол-во платформ и (шепотом) качество фреймворка у Qt на уровень выше, на мой взгляд. Для коммерческого продукта заплатить «переплатить» за Qt считаю вполне разумным, тем более схема гибкая, а с менеджементом/саппортом в РФ (после их покупки нокией) общаться одно удовольствие.

А open-source редакция Qt — вполне устраивает для открытых разработок.

PS. Не имею никаких связей с Qt, просто давно им интересуюсь.
Только не примите за троллинг и попытку начать религиозное сражение. Оффтоп — да.
Так всётаки вектору под линукс быть? :))
Рад, что кто-то узнал лого :) Дык Вектор уже давно работает под Wine, пользуйтесь на здоровье. В планах перехода на Qt/Gtk нет.
Да, хоть и предпочитаю для разработок GTK (в силу некоторых субъективных причин), однако Qt приятно удивил в свое время качеством кода и документацией.
Да и некоторым GTK всё-таки нравится больше QT. И такое бывает.
Бывает-бывает :-) органически не перевариваю вид Qt, что со мной ни делай :(
Вот default вид Qt (а также поведение некоторых из контролов, допустим тулбара) меня тоже немного смущает. Но ведь практически все можно довести до ума. Мы имеем кроссплатформенный фреймворк, причем достаточно успешный, собрать на его основе приятный глазу GUI не составляет труда.

Насколько знаю, последние версии (вроде с 4ки) умеют подстраиваться под стиль ОС + есть собственный Qt-style.
Ну тут два момента, во первых есть небольшой опыт программирования на Unix используя GTK2, а во вторых это собственных темы в Qt которые заставляют приложение отличаться по внешнему виду. Не знаю, возможно в Qt4 что-то изменилось с тех пор, как я разбирался с этой библиотекой, но то что было раньше, не устраивало меня. GTK2 же в Unix использует системные темы (если конечно они тоже на базе GTK ;) как например XFCE) и интерфейс выглядит одинаково, так же я вижу что и под Windows внешний вид приложения соотвествует дизайну os.

Что же касательно самой GTK2, библиотека позволяет даже с начальными знаниями быстро накидать каркас приложения, сделать «резиновый» дизайн который бы при масштабировании окна приложения не терял внешний вид. Ну и конечно она в первую очередь устраивает набором своей функциональности, и количеством компонентов.
> так же я вижу что и под Windows внешний вид приложения соотвествует дизайну os.
ой ли?)
А разве нет?
То, что вы подразумеваете под «соответствует дизайну ОС» означает лишь то, что виджеты реализованы через системные контролы, не более. Но это не соответствие дизайну ОС, это необходимость для ГУИ — уметь отображать системные контролы.

Если вы заботитесь о дизайне под разные ОСи, в большинстве случаев ГУИ надо писать персонально. Благо с грамотным разделением на данные и внешний вид это не так сложно.
У меня нет ссылки на централизованное аргументирование в виде статьи, потому обрывочные примеры приводить не буду. Но всё же, чтобы гуи выглядело естественно в ОСи, делать его надо конкретно под эту ОСь.
>Если вы заботитесь о дизайне под разные ОСи, в большинстве случаев ГУИ надо писать персонально.

хм, вообще-то я не ставил задачи что бы оно выглядело одинаково на всех os, я наоборот, хотел подчеркнуть именно тот факт что приложение не выделяется из системы.
Оно автоматом умеет выполнять UI guidelines?
Понятно, что это и руками никто почти не делает, но это плохо.
Если нет, то это соответствие не дизайну, а просто нативный внешний вид.

Кроссплатформенная библиотека удобна, хотя бы потому, что при перенаписании ГУИ под другую ОС её можно писать на этой самой библиотеке, а не разбираться с новой.
В отношении Gnome и Mac да, тут важно чтобы приложение выглядило в соответствии с Interface Guidelines. Под венду же всё до сих под все наровят прикрутить «скины», а сейчас тянут уи аля оффис 200какойтотампоследний. Так что можно забить.
в смысле забить в случаи венды.
Вот к сожалению с Маком у GTK далеко не все так шоколадно, в первую очередь потому, что Мак — это не только внешний вид кнопочек, но еще и соответствие предельно строгим UI guidelines (в принципе, таковые существуют и для Windows, и для GNOME — но кто ж их соблюдает-то? )
сорри, на маке протестировать нет возможности :( конечно «кроссплатформенное» приложение несколько громко было сказано, скорее это приложение которое возможно запустить на системах windows/unix и ожидается что будет одинаковое поведение.
и ещё не совсем по теме. почему VS 2008 а не к примеру CodeBlocks с MinGW. ведь с MinGW можно сэкономить время при написании кросплатформенных иложений
VS все же как среда будет помощнее ;)
А в случае с MinGW время только на создание makefile сэкономим.
Ага, а то что сгенерит visual studio прям будет работать где-то кроме как в ней. CMake замечательно генерит Makefile для gcc, mingw и студии.
ммм… вообще-то я не никому не навязываю среду VS2008. На самом деле я столкнулся с вопросом сопряжения GTK и VS, нашел решение и решил поделиться с наром. Если кто-то захочет использовать VS для разработки, я хочу лишь сэкономить ему время для настройки системы.
да я ничего против и не говорил. просто поинтересовался.
Ну вот pragma comment не комильфо, рекомендую сразу же садиться на кроссплатформенную систему сборки, на cmake например.
ну тут уже, как говорится, на вкус и цвет фломастеры разные ;) если вы напишете заметку как с нуля сеть на эту систему, вам только хвала и почёт!
Ну фламастеры не при чём, дело в том, что #pragma comment(lib,«gobject-2.0.lib») не будет работать в gcc, точнее он его проигнорит. Следовательно нету кроссплатформенности.
Значит не нужно писать прагму включения библиотеки, а задать её в настройках проекта. Наверное надо всё же сразу определится, кроссплатформенность самого приложения или абсолютная кроссплатформенность вплоть до процесса компиляции и линковки.
А почему не wxWidgets? Как минимум они под виндой нормально выглядят. +ООП.
нафиг этот комментарий?
развести холивар на тему QT vs GTK vs wxWidgets vs еще-какая-то-кроссплатформеннная библиотека?
Научись уважать мнения других людей.
Но отвечу на твой вопрос: этот комментрарий здесь по той причине, что я его запостил.

Теперь по поводу холивара: wx работает через GTK под linux, но обладает нативным look-and-feel под Windows и ООП.
Т. е. он добивается цели «использовать GTK» но имеет ряд бонусов.
ООП аля MFC это не бонус.
я уже отвечал выше, повторюсь здесь, потому что есть опыт работы с GTK, и не т времени разбираться с чем-то новым.
Эх, в каждом таком топике пишут про wxWidgets. Вы его использовали? Это же калька с MFC, со всем вытекающим убожеством.
Интересно. Спасибо!
Если есть интерес, могу в будущем поделиться мыслями по написанию под GTK.
А какой footprint дает GTK? Что приходится за собой тянуть? С *nix понятно, там GTK embedded, как быть с MacOS, Win?
А интерфейс тоже в коде «рисовать»?
Все круто, а редактор форм есть вменяемый?
У меня вопрос к знатокам GTK. Вот этот комбобокс — это криворукость разработчиков Wireshark или фича GTK?
НЛО прилетело и опубликовало эту надпись здесь
НЛО прилетело и опубликовало эту надпись здесь
Я очень рад :)
НЛО прилетело и опубликовало эту надпись здесь
Ну я думаю попробовать создать не «Win32 Console Application», а например «Win32 Project». Тоесть любое НЕ консольное приложение ;) ну а вот как его правильно настроить, тут уж надо разбираться отдельно…
НЛО прилетело и опубликовало эту надпись здесь
сорри, сейчас под рукой нет VS, как доберусь… постараюсь описать ;)
Зарегистрируйтесь на Хабре , чтобы оставить комментарий

Публикации

Истории