LINUX.ORG.RU

Какую библиотеку кроме Qt посоветуете для создания gui под linux?


0

2

Нужна C++:

имеющая не сложный ООП интерфейс,

легкая,

хорошо(+-современно) отрисованная,

для создания оконных приложений с формами и работы с http и ftp запросами, если поддерживает ОСУБД будет+

★★

Последнее исправление: webmak (всего исправлений: 3)

гамбас, лазарус

anonymous
()
Ответ на: комментарий от anonymous

Не силен в терминах под linux, так как работал с windows. И вообще не сильно силен в терминах программирования, так как программист самоучка, поэтому прошу простить если что не так.

webmak ★★
() автор топика

Кроме Qt: никакую. Ну можешь на wxwidgets посмотреть, но там явно нет, насколько я знаю, поддержки чего-либо кроме, собственно, GUI, gtk+ раскололся на две ветки и теперь там всё неоднозначно.

Lilly
()

Тебе правда нужно что-то, кроме Qt? На C++?? С поддержкой html-движков?

Кажется, у тебя тут набор условий, противоречащих друг другу…

Aceler ★★★★★
()
Ответ на: комментарий от Aceler

Мне html движок не нужен, мне нужно отправлять сообщения, файлы и т.д.

С линуксом не работал, а писать свое для обработки не очень хочется. Думал, может уже есть готовое решение, где реализована обработка сообщений системы.

Библиотека больше нужна для создания оконных приложений с формами. Для http и ftp можно привязать другую.

Суть в том, что возникла необходимость написать прогу для линукса, с которым я вообще не работал, поэтому нужен инструмент который бы скрывал особенности системы.

webmak ★★
() автор топика
Ответ на: комментарий от webmak

С линуксом не работал, а писать свое для обработки не очень хочется. Думал, может уже есть готовое решение, где реализована обработка сообщений системы.

wget.

Библиотека больше нужна для создания оконных приложений с формами. Для http и ftp можно привязать другую.

Такое можно написать на голом шелле с использованием диалогов Zenity :)

Суть в том, что возникла необходимость написать прогу для линукса, с которым я вообще не работал, поэтому нужен инструмент который бы скрывал особенности системы.

Гы, это Unix, тут сама ОС скрывает особенности системы :D

Aceler ★★★★★
()

А почему не Qt?
Аргументируй пожалуйста почему ты не рассматриваешь эту библиотеку?

Есть ещё Juce, но оно аналог делфи (буээ) - вырвиглазный кастомный интерфейс на всех платформах.

EXL ★★★★★
()
Ответ на: комментарий от webmak

То, что ты описал идеально ложится на Qt. Ну, посмотри ещё
http://kivy.org/

from kivy.app import App
from kivy.uix.button import Button

class TestApp(App):
    def build(self):
        return Button(text='Hello World')

TestApp().run()
menangen ★★★★★
()
Ответ на: комментарий от webmak

Размер статически слинкованного бинарника, сжатого upx'ом ~ 3.5 МБ
Если не городить костыли, а собрать правильный *.deb-пакет, при установке которого выкачаются все необходимые библиотеки - размер приложения будет несколько сотен КБ.
Если размер приложения в 2014 году является для вас такой большой проблемой, смотрите в сторону wxWidgets/GTK+. Кроме того, вот интересное сравнение.

EXL ★★★★★
()
Ответ на: комментарий от Aceler

wget

тогда уж curl, который заодно и библиотека

wota ★★
()

Ну тут ведь как - для гуя ты можешь юзать хоть что хочешь: GTK+, Qt, AWT или Swing из Java, WinForms или его аналог из C# (mono), а вот все остальное, то есть логику и прочее ты можешь писать на совершенно другом языке, том, который тебе нравится. То есть для HTTP юзать что-то, прибитое гвоздями к гую, не есть разумно.

Zhbert ★★★★★
()
Ответ на: комментарий от EXL

? у меня в 10 раз больше, если не сложно пошлите в нужное место за инфой где так уменьшить - меня это устраивает. Все библиотеки статически.

webmak ★★
() автор топика
Ответ на: комментарий от Eddy_Em

Делай веб-морду и не парь людям мозг!

+1. а если надо именно десктопное приложение - node-webkit.

waker ★★★★★
()
Ответ на: комментарий от Eddy_Em

На чем? PHP я как раз от него хочу уйти, потому, что работаю с хостингами где лимиты по ресурсам и времени выполнения, поэтому нужно десктопное приложение, которое все обработае и вышлет разжеваное на сервер.

webmak ★★
() автор топика
Ответ на: комментарий от webmak

Не надо тут ругаться, у меня от упоминания пыхпыха глаз дергается! Ты еще пхытон назови, чтобы я проблевался заодно.

Ты "вебмин" видел? Вот наподобие такого можно и сделать. Будет тебе десктопное приложение с веб-мордой. У меня так локальный карачаевско-русский словарик работает (CGI на баше). А еще вариант — запускать в виде "сервера в себе" (на основе сокетов либо веб-сокетов), а чтобы рутовские права не нужны были, порт какой-нибудь непривилегированный использовать. Заходит юзверь в браузере на локалхост по порту, скажем, 7777, и получает морду к приложению. Элементарно.

Eddy_Em ☆☆☆☆☆
()

Спасибо всем, попробую все таки на Qt, его хоть чуть знаю, плюс тут сказали, что можно минимизировать размер приложения, то буду копать в эту сторону

webmak ★★
() автор топика
Ответ на: комментарий от webmak

Это — проблема привязанности к мастдайке. Начинал бы ты сразу с линукса, подобных вопросов бы не было. И к гуйне бы ты так не питал теплые чувства!

Наверняка твою задачу можно решить уймой более простых способов. Ты ж не пишешь, зачем тебе это!

Если надо обязательно какие-то картинки отображать + нужна интерактивность, то да — без гуйни не обойтись.

Если не получится с веб-мордой, можно сделать, скажем, на wxwidgets морду к утилитам CLI...

Цель-то хоть какая? Просто сделать для дурачков гуйню, или же забульбенить интерактивный интерфейс (т.к. в консольке жутко неудобно будет)?

Eddy_Em ☆☆☆☆☆
()
Ответ на: комментарий от webmak

попробую все таки на Qt

Не суйся лучше в это. А то станешь ардуинщиком индусокодером.

Eddy_Em ☆☆☆☆☆
()
Ответ на: комментарий от Eddy_Em

Цель сделать приложение для интернет магазинов prestashop, которое бы размещалось на дешевом vds и могло парсить прайсы с картинками и отдавать их скрипту прокладке на импорт в БД. GUI нужно для настройки этого приложения, так как работать с ним буду не я, а обычный пользователь.

Может и есть более простые методы, как это сделать, но я их не знаю и на данный момент времени изучать другие технологии особо нет.

Я то и с линуксом не работал, только с windows, но знакомый попросил. Может ему надо было обратится к более лучшему специалисту, но он это не сделал, хоть я его предупреждал, что это для меня новое.

Да и vds странный с лимитами на выполнения скриптов php. Хоть это и vds где вроде как сам должен настраивать, но что попросили то и делаю.

webmak ★★
() автор топика
Ответ на: комментарий от webmak

Ну я вообще фигею! Для работы с вебом ты создаешь отдельное приложение? А браузер типа уже не канает? Ну, давай, лупась микроскопом по гвоздям!

Eddy_Em ☆☆☆☆☆
()
Ответ на: комментарий от webmak

У тебя библиотеки уже скомпилированы статически?
Какая версия Qt?
Точно собираешь Release-версию проекта?

Попробуй вот этой утилитой сжать конечный бинарник.

./upx -9 binary
EXL ★★★★★
()

Есть EFL еще. Но я не знаю, что она умеет.

KennyMinigun ★★★★★
()

Какую библиотеку кроме Qt

Кроме Qt можно попробовать поесть кактус FLTK. Минимализм во все поля.

no-such-file ★★★★★
()
Ответ на: комментарий от waker

waker ты меня удивил. GUI к твоему плееру на GTK написан. Как на второй версии, так и на третьей. Вот уж не ожидал.

peregrine ★★★★★
()

Тут такой баланс: либо легкая, либо со свистелками и тяжелая. Qt, Gtk и WxWidgets - монстры, особенно Qt и WxWidgets (если не загнётся, то рано или поздно догонит и перегонит по тяжести, так как является абстракцией над GTK). А легкие, это FLTK, или Fox toolkit, как уже сказал анонимус в треде. Кстати, вид fltk программ можно чуть-чуть подкрутить, но самую малость, не более. Для этого надо в Xresources прописать нужные параметры цвета, например у меня так написано:

fltk*scheme:gtk
fltk*background:#383838
Text.background:#383838
fltk*foreground:white
(как ты их раздобудешь, другой вопрос, лучше напрячь этим делом юзера, т.к. у него могут быть очень необычные темы оформления). Ну и конечно, в коде надо внести некоторые изменения, в виде
Fl::get_system_colors();
в начале класса, описывающего главное окно.

peregrine ★★★★★
()
Ответ на: комментарий от webmak

А вы молодец, что взялись...

Пишите, поможем.

Я вот только не представляю одного, вы пишете, цитирую:

приложение для интернет магазинов prestashop, которое бы размещалось на дешевом vds

Каким образом вы хотите, чтобы GUI-приложение размещалось на выделенном сервере? Как оно будет рисовать вам окно? Не лучше ли и вправду написать веб-приложение?

Adonai ★★★
()
Ответ на: комментарий от peregrine

waker ты меня удивил. GUI к твоему плееру на GTK написан. Как на второй версии, так и на третьей. Вот уж не ожидал.

я просто ответил в рамках заданного вопроса — тулкит нужен на крестах. gtkmm то еще поделие, врагу не пожелаешь. остаются wxwidgets и qt.

waker ★★★★★
()

Это в какой школе такое задают?

anonymous
()
Ответ на: комментарий от webmak

Приложение на JavaScript, работающее в браузере.

Браузер тяжёлый, но он уже есть. Кроссплатформенность абсолютная.

anonymous
()
Ответ на: комментарий от Adonai

Adonai

Каким образом вы хотите, чтобы GUI-приложение размещалось на выделенном сервере? Как оно будет рисовать вам окно? Не лучше ли и вправду написать веб-приложение?

Можно конечно сделать реализацию gui через браузер, но тогда нужно постоянно обзванивать (или как там). Но так делать не считаю нужным. А работать будет через терминал, вроде проблем быть не должно.

EXL

Попробуй вот этой утилитой сжать конечный бинарник.

Спасибо всем за желание помочь, выбор сделал приступаю к работе))

webmak ★★
() автор топика
Ответ на: комментарий от webmak

Работать через терминал - вы имеете в виду X-forwarding? То есть, запускать приложение на удалённом сервере, но отрисовывать на локальном?

Можно конечно сделать реализацию gui через браузер, но тогда нужно постоянно обзванивать (или как там)

AJAX-запросы/WebSockets это.

Мне всё же кажется весьма сомнительным ваш выбор... на мой взгляд, куда проще было бы сделать это через браузер и, например, аналог Qt для веба, http://www.webtoolkit.eu/wt/

Adonai ★★★
()
Ответ на: комментарий от Deleted

Я не юрист))) А также, я же не коммерческое приложение делаю, а частное. И если честно пока не задумывался над лицензиями.

webmak ★★
() автор топика
Ответ на: комментарий от webmak

Некоммерческое, да. Но оно же будет с закрытым исходным кодом и распространяться через сайт, я так понимаю?

Deleted
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.