Форум программистов, компьютерный форум CyberForum.ru

C++

Войти
Регистрация
Восстановить пароль
 
 
Рейтинг: Рейтинг темы: голосов - 19, средняя оценка - 4.68
MaxCPP
0 / 0 / 0
Регистрация: 26.07.2013
Сообщений: 9
#1

Какую GUI библиотеку выбрать? - C++

28.09.2014, 18:11. Просмотров 3245. Ответов 56
Метки нет (Все метки)

Библиотеки визуальных компонентов очень громоздки, особенно Qt - 10 мб Hello World смех, да и только. Руганный-переруганный C++ Builder 2003 года и то создаёт лишь 600 кб файл. Есть нормального размера библиотека?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
28.09.2014, 18:11     Какую GUI библиотеку выбрать?
Посмотрите здесь:

Какую библиотеку использовать под GUI? - C++
Подскажите какую библиотеку использовать лучше/удобнее.Я слышал только про Qt, WTL, GTK. Или все же WinAPI изучать?

Какую json библиотеку выбрать? - C++
Здравствуйте, делаю я небольшой парсер, ответ получаю в json формате. Решил поискать в интернете какую либу лучше использовать для работы с...

Какую графическую библиотеку выбрать? - C++
Господа ветераны, поделитесь опытом какую графическую библиотеку лучше выбрать для программирования 2D игр (OpenGL, DirectX, другое...)? ...

Какую библиотеку выбрать для вращения тетраэдра в окне программы? - Visual C++
Написать программу под действием стрелок "Вправо", "Влево" Вращать тетраэдр в окне программы. Варианты библиотек: GDI+ WPF ...

Подскажите GUI библиотеку на c++ - C++
Начал давеча изучать c++, разобрался с основными функциями и тп., но хочется создавать GUI приложения. Оказывается сам c++ не может делать...

Подскажите библиотеку GUI, реализующую графический интерфейс - C++
Доброй ночи. Подскажите, пожалуйста, лёгкую и простую библиотеку реализующую графический интерфейс. Сам интерфейс примитивен - пара кнопок...

Какую библиотеку использовать? - C++
Только начал изучение Си. Нужно написать программу, которая выводит сегодняшнюю дату в формате дд.мм.гггг Собственно, вопрос в сабже...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Убежденный
Системный программист
Эксперт С++
15295 / 6927 / 1096
Регистрация: 02.05.2013
Сообщений: 11,334
Завершенные тесты: 1
28.09.2014, 19:02     Какую GUI библиотеку выбрать? #2
GUI-библиотеки разные есть, но выбирать их нужно под задачу.

Если не нравится Qt, можно попробовать HTMLayout (там UI описывается
декларативно, с помощью HTML), размер dll - около 1 МБ.

Есть еще троица MFC/ATL/WTL.
Для приложений, завязанных на обработке документов и всяких MDI,
интеграцией с COM и т.п. - самое то.

Есть Ultimate++, тоже весьма компактная и простая.

Еще мне тут недавно посоветовали XUILIB. Сам на ней не писал, но
судя по демкам, возможностей у нее достаточно.
Evg
Эксперт CАвтор FAQ
17533 / 5771 / 369
Регистрация: 30.03.2009
Сообщений: 15,872
Записей в блоге: 26
29.09.2014, 00:24     Какую GUI библиотеку выбрать? #3
Чисто на всякий случай. Если hello world будет весить 10 мегов, то основная масса программ, которые ты за разумное время напишешь, вряд ли будут весить более 11 мегов. И эти 10 лишних мегов к твоей программе - это плата за удобство, а вовсе не следствие того, что разработчики Qt являются идиотами

компиляция под другие машины
Atmega
Заблокирован
29.09.2014, 04:49     Какую GUI библиотеку выбрать? #4
Если цель - любой ценой создать как можно более легкий исполняемый файл, то нужно брать нативные GUI-библиотеки.
В Windows это WinAPI, в никсах (кажется) X Window System.
Но каково на их основе (особенно на основе последней) написать что-то сложнее хелловорлда (да и его тоже) - это разговор особый.
Гоблин-инженер
113 / 113 / 32
Регистрация: 18.09.2014
Сообщений: 337
29.09.2014, 10:14     Какую GUI библиотеку выбрать? #5
MaxCPP, как уже сказали выше, если вы гонитесь за размером исполняемого файла, то пользуйтесь WinAPI, библиотеки типа Qt дают большой удобный и мощный инструмент для работы. И кстати, написанный привет мир на линуксе:
C++ (Qt)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include <QApplication>
#include <QWidget>
#include <QLabel>
#include <QPushButton>
#include <QVBoxLayout>
 
int main(int argc, char *argv[])
{
    QApplication app(argc, argv);
    QWidget *wdg = new QWidget;
    QVBoxLayout *ltMain = new QVBoxLayout;
    ltMain->addWidget(new QLabel("Hello, world!", wdg));
    ltMain->addWidget(new QPushButton("Click me", wdg));
    wdg->setLayout(ltMain);
    wdg->show();
    return app.exec();
}
весит 13.6кб. Вот такие пироги
Миниатюры
Какую GUI библиотеку выбрать?  
Evg
Эксперт CАвтор FAQ
17533 / 5771 / 369
Регистрация: 30.03.2009
Сообщений: 15,872
Записей в блоге: 26
29.09.2014, 12:12     Какую GUI библиотеку выбрать? #6
Цитата Сообщение от Гоблин-инженер Посмотреть сообщение
И кстати, написанный привет мир на линуксе
Так у тебя с динамической линковкой, а ТС скорее всего смотрел со статической. Если бы я занимался распространением своей программы на Qt, я бы выбрал именно статический вариант, чтобы не загружать пользователя геморроем по самостоятельной установке Qt
Dmitriy_M
1340 / 1221 / 112
Регистрация: 20.03.2009
Сообщений: 4,392
Записей в блоге: 11
29.09.2014, 12:18     Какую GUI библиотеку выбрать? #7
Цитата Сообщение от Evg Посмотреть сообщение
пользователя геморроем по самостоятельной установке Qt
Это не серьезно.
Под GNU/Linux собираю соответствующий deb/rpm пакет, и все ставиться штатными средствами.
Под Windows создаю пакет с инсталлятором, в котором лежат все необходимые библиотеки.

Есть еще wxWidgets, которые использует родные виджеты.
Гоблин-инженер
113 / 113 / 32
Регистрация: 18.09.2014
Сообщений: 337
29.09.2014, 12:35     Какую GUI библиотеку выбрать? #8
Evg, я к тому, что это не проблема Qt, а проблема конкретной системы. Линукс с подобным справляется, с виндой нужно воевать
Evg
29.09.2014, 15:12
  #9

Не по теме:

Цитата Сообщение от Dmitriy_M Посмотреть сообщение
Это не серьезно.
Под GNU/Linux собираю соответствующий deb/rpm пакет, и все ставиться штатными средствами
Можем поэкспериментировать. Я на работе сижу под линуксом. Без админских прав. Собери мне динамический hello world и отправь в виде бинарника. Просто интересно, сколько времени у нас уйдёт на то, чтобы этот бинарник запустить (можем предположить, что я простой пользователь и сам до многих вещей не догадаюсь). И получим ли мы от этого какой-то выигрыш в количестве мегабайт

Цитата Сообщение от Dmitriy_M Посмотреть сообщение
Под Windows создаю пакет с инсталлятором, в котором лежат все необходимые библиотеки
Если подойти с позиции количества мегабайт, то выигрыша от динамической линковки всё равно не получим

Dmitriy_M
29.09.2014, 15:26
  #10

Не по теме:


Цитата Сообщение от Evg Посмотреть сообщение
Можем поэкспериментировать. Я на работе сижу под линуксом. Без админских прав. Собери мне динамический hello world и отправь в виде бинарника. Просто интересно, сколько времени у нас уйдёт на то, чтобы этот бинарник запустить (можем предположить, что я простой пользователь и сам до многих вещей не догадаюсь). И получим ли мы от этого какой-то выигрыш в количестве мегабайт
Пакет пот Debian 7 x86 подойдет?

Evg
29.09.2014, 15:42
  #11

Не по теме:

Цитата Сообщение от Dmitriy_M Посмотреть сообщение
Пакет пот Debian 7 x86 подойдет?
Я простой пользователь. Я не понимаю, что такое "пакет под Debian 7". У меня Gentoo Linux

Dmitriy_M
29.09.2014, 15:46
  #12

Не по теме:


OMG. Как сложно написать ebuild.
Только статическая сборка и тут не спасет.

Evg
29.09.2014, 16:03
  #13

Не по теме:

Цитата Сообщение от Dmitriy_M Посмотреть сообщение
OMG. Как сложно написать ebuild
А тут я уже и в правду не понимаю, что от меня требуется. Если что - у нас какая-то сборка от админов. Но в общем случае, как мне кажется, это никакой роли не играет, потому что всяких разных линуксов много, а потому у пользователя не обязательно debian

Цитата Сообщение от Dmitriy_M Посмотреть сообщение
Только статическая сборка и тут не спасет.
Где "тут" и почему не спасёт?

Avazart
Эксперт С++
7115 / 5292 / 273
Регистрация: 10.12.2010
Сообщений: 23,387
Записей в блоге: 17
30.09.2014, 17:14     Какую GUI библиотеку выбрать? #14
Цитата Сообщение от MaxCPP Посмотреть сообщение
Библиотеки визуальных компонентов очень громоздки, особенно Qt - 10 мб Hello World смех, да и только. Руганный-переруганный C++ Builder 2003 года и то создаёт лишь 600 кб файл. Есть нормального размера библиотека?
Простой вопрос, вы собрались только хлоуворды писать? Думаю нет.
Приложение может быть намного сложнее, но будет занимать приблизительно столько же, но затраты труда могут оказать меньшими(в плане времени и сил) чем использование нативных средств.

Новый С++Builder тоже клепает экзешники ~2...7 MБ (и не все могЁт что могЁт Qt)

Добавлено через 5 минут
Цитата Сообщение от Evg Посмотреть сообщение
Если подойти с позиции количества мегабайт, то выигрыша от динамической линковки всё равно не получим
Еще как получим, но только если это пакет программ, а не одна единственная программуленка.

Добавлено через 4 минуты
Цитата Сообщение от Evg Посмотреть сообщение
Если бы я занимался распространением своей программы на Qt, я бы выбрал именно статический вариант, чтобы не загружать пользователя геморроем по самостоятельной установке Qt
Для этого можно инсталятор написать.
А программы использующие WebKit и/или Multimedia не собрать статически (ну по крайней мере я не слыхал о таком)
DrOffset
30.09.2014, 18:41
  #15

Не по теме:

Цитата Сообщение от Avazart Посмотреть сообщение
(и не все могЁт что могЁт Qt)
Он еще и стОит как домик в деревне.

Evg
Эксперт CАвтор FAQ
17533 / 5771 / 369
Регистрация: 30.03.2009
Сообщений: 15,872
Записей в блоге: 26
30.09.2014, 18:58     Какую GUI библиотеку выбрать? #16
Цитата Сообщение от Avazart Посмотреть сообщение
Еще как получим, но только если это пакет программ, а не одна единственная программуленка
Пока ты не крупная контора по выпуску промышленного софта, а всего лишь любитель, который клепает программы, которые по большому счёту и задаром никому не нужны, я бы попросту не лез в варианты с динамической линковкой с библиотеками, которые являются опциональными. Людям и так твоя программа не нужна, а напрягать их дополнительными телодвижениями ради её запуска - смысла нет
Avazart
Эксперт С++
7115 / 5292 / 273
Регистрация: 10.12.2010
Сообщений: 23,387
Записей в блоге: 17
30.09.2014, 19:17     Какую GUI библиотеку выбрать? #17
Пример: написал уже несколько приложений под заказ которые используют браузер, пока что только на C++Builder+ TCromium - собственно тянется ~40 MБ от TCromium, но думаю с таким же успехом можно было использовать Qt и его Webkit.

И людей не смутил такой размер, более того не требовали написать инсталятор, главное что бы работало.
Evg
Эксперт CАвтор FAQ
17533 / 5771 / 369
Регистрация: 30.03.2009
Сообщений: 15,872
Записей в блоге: 26
30.09.2014, 19:49     Какую GUI библиотеку выбрать? #18
Цитата Сообщение от Avazart Посмотреть сообщение
Пример: написал уже несколько приложений под заказ которые используют браузер, пока что только на C++Builder+ TCromium - собственно тянется ~40 MБ от TCromium, но думаю с таким же успехом можно было использовать Qt и его Webkit
Я так понимаю, что это под виндой. Там всё-таки система установки более дружественна к пользователю и нету свей этой чехарды с пакетами и зависимостями. Не надо ковыряться с тем, что "а вот запустите apt-get <чего-то там>, оно вам за полдня скачает миллион библиотек, после чего вы можете запустить мой hello world"

Цитата Сообщение от Avazart Посмотреть сообщение
И людей не смутил такой размер
Мне так вообще пофиг на размер. В наши дни лишние 10 мегабайт - это тьфу. Я как раз-таки ратую за то, чтобы сокращать количество гемора и плевать, сколько лишних мегабайт от этого будет. Т.е. можно собрать динамически слинкованный hello world размером 13 килобайт и радоваться, что бинарник маленький, а можно собрать статически слинованный на 10 мегабайт и радоваться тому, что отдал людям бинарник, они его берут и тупо запускают, безо всяких дополнительных телодвижений
Avazart
Эксперт С++
7115 / 5292 / 273
Регистрация: 10.12.2010
Сообщений: 23,387
Записей в блоге: 17
30.09.2014, 19:57     Какую GUI библиотеку выбрать? #19
Цитата Сообщение от Evg Посмотреть сообщение
ам всё-таки система установки более дружественна к пользователю и нету свей этой чехарды с пакетами
Ну-ну... вы вероятно винду не разу не переставляли, когда нужно заново переставить не одну программу а целый пакет программ.
А учитывая что в основном все ставится через оконные инсталяторы то нужно сидеть целый день и тыкать по кнопочкам да/нет.
Уже не говорю о поисках в интернете.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
30.09.2014, 19:57     Какую GUI библиотеку выбрать?
Еще ссылки по теме:

какую библиотеку подключить? - C++
в студии 10 невидет cin i cout что изенить? // lllab.cpp: определяет точку входа для консольного приложения. // ...

Какую с++ библиотеку VK-API использовать лучше? - C++
понадобилось написать клиент для вк с использованием апи... подскажите билиотеку, пожалуйста, и метод её установки в G++ и vs2010... ...

Подскажите какую нужно подключить библиотеку - C++
я использую функцию bzero( (void *)board, MAX_LENGTH*MAX_LENGTH); написанно в книге, что это базовая функция очистки памяти. Но вылетает...

Какую библиотеку подключить для использования cout? - C++
не могу подключить cout в заголовочном файле класса((( #include &quot;money.h&quot; money::money() { }

Какую библиотеку подключить для использования enum - C++
Компилятор ругается: fatal error C1083: Cannot open include file: 'enum_helper_pre.h': No such file or directory #include...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
DrOffset
7058 / 4199 / 949
Регистрация: 30.01.2014
Сообщений: 6,965
30.09.2014, 19:57     Какую GUI библиотеку выбрать? #20
Цитата Сообщение от Evg Посмотреть сообщение
Не надо ковыряться с тем, что "а вот запустите apt-get <чего-то там>, оно вам за полдня скачает миллион библиотек, после чего вы можете запустить мой hello world"
Мое мнение может быть предвзято, но я всегда считал, что концепция пакета в linux с единой базой и информацией об установленном софте, гораздо более качественная, чем концепция разношерстных и непонятно что и куда устанавливающих, нестандартизированных установщиков в винде.
Т.е. на мой взгляд, более дружественная таки концепция пакетов linux, хоть виндовая изначально и обладает более красивым "лицом".
Yandex
Объявления
30.09.2014, 19:57     Какую GUI библиотеку выбрать?
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru