powered by simpleCommunicator - 2.0.58     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / C++ [игнор отключен] [закрыт для гостей] / Какой инструмент использовать для создания универсальной формы для C++ программ?
25 сообщений из 307, страница 5 из 13
Какой инструмент использовать для создания универсальной формы для C++ программ?
    #39977170
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я регулярно использую

1. Gimp (C) растровый редактор
2. LibreOffice (Writer, Spreedsheet) (C++)
3. yED (Java) рисовалка
4. Microsoft Teams (Хз начем написано... не знаю)
5. Jetbrains (Java + лаунчер запускалка на С++ навреное)
6. Chrome (C++)
7. Mozilla (тут какойто дикий микс языков я просто копи-пащу с вики : [3], C++[3], JavaScript[3], CSS[4], Rust[3] и XUL[5])
8. VLC (Си[4], C++[5], Objective-C и Lua .... ага вот тут Qt появился Qt[6][7], Ncurses[7] и Cocoa)
9. FreeMind (Java) рисовалка облачков
10. Atom ( JavaScript[3], CoffeeScript[4], CSS, C++, HTML и Node.js) текстовый и проектный редактор
11. Code Blocks (C++ (wxWidgets)) IDE. Редко использую
12. Postman (хз. Не нашел сведений. Подскажите кто знает)
13. DBeaver (непонятно на чем разработан) - такой себе универсальный JDBC IDE-редактор и просто тул.
14. KeePass (С++/C#) хранилка ключей

+ еще оуенная туча мелочей которая толи не имеет UI толи просто я так редко юзаю что неохота даже упоминать.

Вобщем из 14 программных продуктов только 1 декларативно использует Qt.
Это моя субъективная статистика. Вот крест на пузе. Честно говорю.
...
Рейтинг: 0 / 0
Какой инструмент использовать для создания универсальной формы для C++ программ?
    #39977172
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Leonid Kudryavtsev
mayton
Я не хочу отвечать по топику каментом на каждый ответ. Вы все - по сути правы.

Давайте сейчас вспомним и перечислим какие приложения на Qt вы знаете? Или какие реально использовали?

1) у нас сейчас на QT программируют
заказчик использует ))) куда ему деваться )))

Это - сильно. Принимается... Но для статистики - будет очень сложно его учесть.
...
Рейтинг: 0 / 0
Какой инструмент использовать для создания универсальной формы для C++ программ?
    #39977179
Фотография crutchmaster
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton
DBeaver (непонятно на чем разработан)

Ява, движок эклипса, gtk в качестве фронтэнда. Разработчики у них довольно отзывчивые.
...
Рейтинг: 0 / 0
Какой инструмент использовать для создания универсальной формы для C++ программ?
    #39977181
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
crutchmaster
mayton
DBeaver (непонятно на чем разработан)

Ява, движок эклипса, gtk в качестве фронтэнда. Разработчики у них довольно отзывчивые.

ОК. Спс.
...
Рейтинг: 0 / 0
Какой инструмент использовать для создания универсальной формы для C++ программ?
    #39977182
egorych
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton
Грубо говоря они не тратят ни секунды времени в те вопросы в которых
С++ ники заседают на долгие дни и часы
mayton, это что за вопросы такие?
...
Рейтинг: 0 / 0
Какой инструмент использовать для создания универсальной формы для C++ программ?
    #39977183
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
egorych
mayton
Грубо говоря они не тратят ни секунды времени в те вопросы в которых
С++ ники заседают на долгие дни и часы
mayton, это что за вопросы такие?

Это те самые вопросы, коллега, которые звучат в форуме. Кодировки... e.t.c.
...
Рейтинг: 0 / 0
Какой инструмент использовать для создания универсальной формы для C++ программ?
    #39977186
egorych
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton
Это те самые вопросы, коллега, которые звучат в форуме. Кодировки... e.t.c.
нет в Qt таких проблем, класс QString инкапсулирует их в себе так же, как и AnsiString в Delphi. по сути, разработка в обоих средах практически ничем не различается. в Дельфи паскаль этот убогий, разве что )) но это - вкусовщина)
...
Рейтинг: 0 / 0
Какой инструмент использовать для создания универсальной формы для C++ программ?
    #39977187
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
egorych
mayton
Это те самые вопросы, коллега, которые звучат в форуме. Кодировки... e.t.c.
нет в Qt таких проблем, класс QString инкапсулирует их в себе так же, как и AnsiString в Delphi. по сути, разработка в обоих средах практически ничем не различается. в Дельфи паскаль этот убогий, разве что )) но это - вкусовщина)

Моё джентльменское пари в силе.
...
Рейтинг: 0 / 0
Какой инструмент использовать для создания универсальной формы для C++ программ?
    #39977190
egorych
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton
Давайте сейчас вспомним и перечислим какие приложения на Qt вы знаете? Или какие реально использовали?
поиск по диску С с условием qt*.dll даёт такие разультаты:
1. TortoiseHg
2. лаунчер Battle.net ( близардовский аналог стима )
3. лаунчер Galaxy Client ( ещё один аналог стима )
4. лаунчер Origin ( и ещё один аналог стима )
5. Surf Easy VPN у них интерфейса не много, но тоже на Qt
6. Google Earth Portable, встроен в Total Commander

ну и мои поделия, заказчику тоже некуда деваться, как и у Leonid Kudryavtsev ))
...
Рейтинг: 0 / 0
Какой инструмент использовать для создания универсальной формы для C++ программ?
    #39977192
egorych
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton
Моё джентльменское пари в силе.
я - твоё пари)) я пишу и на билдере и на кутэ)
...
Рейтинг: 0 / 0
Какой инструмент использовать для создания универсальной формы для C++ программ?
    #39977197
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
egorych
mayton
Моё джентльменское пари в силе.
я - твоё пари)) я пишу и на билдере и на кутэ)

Ну... это просто прекрасно. Собирай команду. Придумаю вам задание.
...
Рейтинг: 0 / 0
Какой инструмент использовать для создания универсальной формы для C++ программ?
    #39977222
Фотография CEMb
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
дошёл до дома, я снова с вами!
PetroNotC Sharp
Вы хотите кроссплатформенно? Это тупиковое направление. В java уже заглохло.
я хочу UI на C++, он вроде как кроссплатформенный. Хочу UI как boost.
Давайте ещё раз: я пишу программу на C++, хочу сделать GUI, но тут выясняется, что под все OS-и GUI свой. Хорошо. Давайте сделаем так: возьмём GUI и выкинем из него максимум платформозависимого кода. На C++ мы это можем сделать так: сделать абстрактную иерархию контролов. Текст, заголовки, идетификаторы, состояния, обработка событий - это всё мы можем сделать в C++ и это всё будет компилироваться на любой платформе, ок?

И эта система сможет работать нормально, если мы как-то будем в неё передавать сообщения.
На этом кроссплатформа заканчивается, и начинаются те самые проблемы, из-за которых такая куча разных реализаций - связь с реальными окнами:
1. События. Это вообще не проблема - пробросить из живого окна через прослойку 10-20 событий.
2. Отрисовка. Вот это уже проблема, потому что рисовать надо дофига, под все типы контролов, причём так, чтобы юзеры могли кастомизировать. Универсальность этого подхода поднимает сложность инсталляции и изучения. Потому что надо много чего проинициализировать, поставить, нарисовать, если надо своё.

И обычно пункты 1 и 2 - это одна и та же сущность. Вот я думаю, если её разделить, то, например, чисто тестовые-кнопочные окна можно лепить очень быстро, просто используя картинку. Да, это не так круто будет, как Qt, но зато это можно просто добавить одним #iclude как буст и использовать без инсталляции дополнительных IDE, как в Qt или кучи библиотек, как в wX.

Dimitry Sibiryakov
Внезапно, да? Причём его тоже нужно инсталлировать и таскать за собой. Но вэберам это
почему-то не мешает.
То, что им это не мешает, совсем не значит, что они прям счастливы от такой ситуации.

petrav
У меня складывается ощущение, что вы GUI пишите на WinAPI. И уже, наверное, написали свой мини MFC. Вам не кажется, что это как-то слишком уж? Qt освоить в базе можно за месяц. Но душа прикипела к своим разработкам, да?
Да. Мне много-много лет, когда я писать начал на плюсах, Qt только-только появился, про него никто не знал, поэтому у меня не было выбора, на чём учиться, был только MFC, но как-то не прижился. Мини MFC у меня нету, у меня пара классов, под окно и под диалог, я просто использую их, как основу, я делаю это очень быстро. Даже если бы у меня не было их, я могу очень быстро их воспроизвести. Да, это проблема для меня, потому что я работаю по пути наименьшего сопротивления, мне проще за полчаса наваять UI на WinAPI, чем неделю разбираться с Qt, которое на моей работе ещё та проблема поставить и использовать. А на рсдн-е был человек, кажется это был x64, который вообще писал на асме и там же генерил огромные пользовательские интерфейсы, и у него тоже проблем не было.

mayton
И здесь нас поджидает "обломись"
я там в самом начале написал про Xamarin, который позволяет лепить один UI, который компилируется потом под винду, андроид и iOS. Там всё довольно просто, даже у меня получилось сделать приложение под телефон.
mayton
все они имеют ОЧЕНЬ разный оконный API
и попытка подвести их под "общий знаменатель" порождает либо унылое тормнозное говно.
Унылое, да, но вроде не тормозное. Ну и при желании можно что-то кастомизировать под конкретные платформы.
mayton
И это мы еще даже не затронули вопросы разного разрешения клиентской области в пикселах!
UX, всяких там flexible UI, тянущихся или скейляхщихся шрифтов и окошек.
да, я про это помню, но пока молчу. По крайней мере, я знаю, есть программа, которая умеет растягивать (почти) любые окна, которые это не предполагали, при этом разумно как-то умеет тянуть и контролы.

Ещё раз хочу сказать, что я не против Qt/wX/WPF, просто хочу проверить гипотезу, что можно было бы сделать UI просто набором шаблонных классов (я надеваю свой шаблонный плащ и шаблонную шляпу), который просто можно пристегнуть к проекту, ничего не инсталлируя, ничего не собирая, аки boost. И потом просто на окно кинуть картинку и с окна пробросив несколько сообщений - это 10-15 минут кодинга. Да, это не полноценный интерактив, но это был бы просто работающий на любом окне UI, собранный за 10 минут. Это было бы круто, да ведь? Я давно хотел эту мысль тут поднять, но всё стеснялся, а вчера меня в этом вашем телеграм-канале обозвали идиотом, потому что я там что-то не знал в тонкостях, поэтому я перестал бояться а тут и тема соотвествующая на форуме появилась.
...
Рейтинг: 0 / 0
Какой инструмент использовать для создания универсальной формы для C++ программ?
    #39977227
petrav
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton
egorych
пропущено...
я - твоё пари)) я пишу и на билдере и на кутэ)

Ну... это просто прекрасно. Собирай команду. Придумаю вам задание.

Да, придумывать задания для других -- это вы любите. Как вы там сеть Кохонена запрограммировали или закончилось придумыванием задания для комьюнити? :)
...
Рейтинг: 0 / 0
Какой инструмент использовать для создания универсальной формы для C++ программ?
    #39977230
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
CEMb2. Отрисовка. Вот это уже проблема, потому что рисовать надо дофига, под все типы
контролов, причём так, чтобы юзеры могли кастомизировать.

Вот именно, что это проблема когда пытаешься рисовать. Поэтому правильным подходом будет
вызвать системную функцию "создай мне в таких-то координатах окно класса "EDIT" и
позаботься об остальном". И система уже позаботится и о том, чтобы это окно выглядело как
остальные его класса и о его пользовательской кастомизации.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Какой инструмент использовать для создания универсальной формы для C++ программ?
    #39977232
bk0010
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
CEMb
я хочу UI на C++, он вроде как кроссплатформенный. Хочу UI как boost.
Тогда добейтесь, чтобы в C++ Qt перенесли уже полностью, а не кусками (QString->std::string,QMap->std::map и т.д.).
В Delphi интерфейс с БД делается быстрее, чем на Qt, компонентов в ней больше, AnyDAC намного богаче, чем QSql. Но жить на Qt вполне можно, и жить неплохо. Надо просто закладывать побольше времени на разработку.
В Qt для разработки интерфейса, помимо Widget-ов, есть еще и qml - декларативный язык создания интерфейса (qt quick). Рекомендую посмотреть на него тем, кто ратует за DOM для создания интерфейса. Мне он не зашел.
...
Рейтинг: 0 / 0
Какой инструмент использовать для создания универсальной формы для C++ программ?
    #39977233
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
petrav
mayton
пропущено...

Ну... это просто прекрасно. Собирай команду. Придумаю вам задание.

Да, придумывать задания для других -- это вы любите. Как вы там сеть Кохонена запрограммировали или закончилось придумыванием задания для комьюнити? :)

Чтоб кохонен красиво отработал - надо скрейпть больше пользовательских данных. А я пока собрал маловато.

Кроме того я думаю над графикой. Хексагональная система координат. Там - много ещё не сделано. Я подниму ещё один связный топик. Чтоб как-то распараллелить и себя разгрузить.
...
Рейтинг: 0 / 0
Какой инструмент использовать для создания универсальной формы для C++ программ?
    #39977249
egorych
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton
Ну... это просто прекрасно. Собирай команду. Придумаю вам задание.
спасибо, чё) у меня бэклог на 5 лет вперёд расписан, и он не уменьшается))
...
Рейтинг: 0 / 0
Какой инструмент использовать для создания универсальной формы для C++ программ?
    #39977262
Фотография CEMb
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakov
Вот именно, что это проблема когда пытаешься рисовать. Поэтому правильным подходом будет
вызвать системную функцию "создай мне в таких-то координатах окно класса "EDIT" и
позаботься об остальном".
Нет такой универсальной функции из коробки. И я не хочу её делать, потому что есть Qt или ещё что, что это делает. Я хочу попробовать другой подход.
bk0010
Тогда добейтесь, чтобы в C++ Qt перенесли уже полностью
Идея отличная, но меня вряд ли кто послушает

bk0010
В Delphi интерфейс с БД делается быстрее, чем на Qt
2:1 в пользу Дельфи :)

я, наверно, как-то плохо объясняю...
я не хочу сейчас делать Qt-like или что-то полноценное кроссплатформенное. Я хочу сделать чистую логику на C++. И совсем-совсем немного кода, который будет связывать живое окно с этой логикой. Ключевой момент - совсем-совсем немного кода . Аскетизм и практичность.
Т.е. смотрите, мне вдруг понадобилось что-то быстро сделать, с окном с кнопками, допустим сложный MsgBox c 10 выборами. Я бегу, создаю в студии дефолтный Win32 проект, там есть окно. В основной файл делаю #icnlude "new.ui.h", объявляю и связываю в четыре строки иерархию контролов и прослойки для окна:
Код: plaintext
1.
2.
3.
4.
5.
CtrlSP root = make_shared<Ctrl>(TEXT("root"));
MyWnd wnd;
// handshake
wnd.SetCtrlRoot(root);
root->SetCallbackLayer(wnd);

В хендлере MyWndProc пишу
Код: plaintext
1.
2.
3.
case WM_LBUTTONDOWN:
wnd.OnMouseDown(wParam, (short)LOWORD(lParam), (short)HIWORD(lParam));
break;

да, придётся ещё создать класс для wnd, но он крошечный:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
#include "ui/UIEventLayer.h"
#include "ui/UICallbackLayer.h"
using namespace UI;
class MyWnd : public UIEventLayer, public UICallbackLayer
{
	//	UICallbackLayer
	void OnCommand(IdType id) override;
};

Код: plaintext
1.
2.
3.
4.
5.
6.
#include "MyWnd.h"
//	UICallbackLayer
void MyWnd::OnCommand(IdType id)
{
	// here we're processing them all
}

и всё. Тут можно писать свою логику.
Единственное, чего тут нет, это редактора и загрузки формы в иерархию контролов. И рисовалки для окна.
Но смотрите, что я могу сделать:
- я могу оставить всё как есть. И программер сам нарисует картинку.
- я могу написать отдельно шаблон, который позволит грузить и рисовать картинку из файла или ресурсов.
я хочу чтобы было много выбора. Хочу я быстро сваять 10-кнопочное окно - пожалуста, можно не особо разбираясь это сделать за 5 минут, вся "документация" приведена выше. Хочу я что-то более сложное - тоже пожалуста, придётся ещё что-то подключить и что-то вызывать, чуть сложнее.
Сейчас во всех этих UI-системах всё так, что надо тащить и изучать всю библиотеку. Хотите взять одну кнопку из MFC - а вот хрен. Надо тащить всё MFC, с иерархией классов, с их монструозным обработчиком, с кривыми сабклассерами и так далее. И так везде. А я хочу изящества stl или boost. Ты берёшь только то, что надо. При этом ничего добавочно не надо пересобирать, линковать.
egorych
спасибо, чё) у меня бэклог на 5 лет вперёд расписан, и он не уменьшается))
ко мне с утра пришёл рекрутер.
я знаю способ, как быстро разгружать беклоги
...
Рейтинг: 0 / 0
Какой инструмент использовать для создания универсальной формы для C++ программ?
    #39977266
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
bk0010,

>Рекомендую посмотреть на него тем, кто ратует за DOM для создания интерфейса. Мне он не зашел.
== мне тоже))
...
Рейтинг: 0 / 0
Какой инструмент использовать для создания универсальной формы для C++ программ?
    #39977272
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
>
root->SetCallbackLayer(wnd);
В хендлере MyWndProc пишу
case WM_LBUTTONDOWN:
wnd.OnMouseDown(wParam, (short)LOWORD(lParam), (short)HIWORD(lParam));
break;
==
Не хотят люди писать на каллбэках.
И простыни из case событий тоже не хотят.
Они прикладники))
...
Рейтинг: 0 / 0
Какой инструмент использовать для создания универсальной формы для C++ программ?
    #39977279
Фотография CEMb
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp
Не хотят люди писать на каллбэках.
И простыни из case событий тоже не хотят.
Они прикладники))
Не вопоос. Как сделать иначе? Уверен, получится так же коротко.
Главная мысль - сделать быстро, и чтоб работало.
...
Рейтинг: 0 / 0
Какой инструмент использовать для создания универсальной формы для C++ программ?
    #39977306
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
CEMb,
Полное привлечение IDE.
- сигналы в Qt
- dfm отдельный файл в дельфи
- xml разметка для верстки в шарпе и андроиде.
...
Рейтинг: 0 / 0
Какой инструмент использовать для создания универсальной формы для C++ программ?
    #39977321
Фотография CEMb
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp
Полное привлечение IDE.
я как раз хотел сделать всё независимое, в том числе и от IDE. Чтобы можно было слепить UI где угодно, хоть в блокноте.
PetroNotC Sharp
- сигналы в Qt
чем они сильно отличаются от событий? Только тем, то на каждое событие написана своя функция? Ну можно сделать в редакторе возможность, чтобы он генерил соответствующий общий код, основанный на slot-signal или на enent. В том коде, который я привёл, проброс событий и класс-посредник делается программистом. Т.е. если хочется - можно написать тоже самое на слотах.
PetroNotC Sharp
- dfm отдельный файл в дельфи
- xml разметка для верстки в шарпе и андроиде.
речь пока только про плюсы
...
Рейтинг: 0 / 0
Какой инструмент использовать для создания универсальной формы для C++ программ?
    #39977338
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
CEMb,

Увы. Если 100 человек пишут вне блокнота, а один в блокноте, то не следует на него ориентироваться.
Рынок.
"Универсальность - враг хорошего"
...
Рейтинг: 0 / 0
Какой инструмент использовать для создания универсальной формы для C++ программ?
    #39977359
Фотография CEMb
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp, похоже я всё-таки плохо объясняю


я хочу сделать так, чтоб было не важно, где пишешь, чтобы везде можно было сделать это быстро .
Интеграция в IDE делается, когда надо что-то большое и сложное заавтоматизировать. Вот я хочу, чтобы тут не было ничего большого и сложного. Поэтому есть или нет IDE - тут не важно.

Единственное - редактор. Да, его разумно вынтегрировать в IDE. Но до него ещё дело не дошло, хотя он тут будет почти самый важный элемент всей этой интриги.
...
Рейтинг: 0 / 0
25 сообщений из 307, страница 5 из 13
Форумы / C++ [игнор отключен] [закрыт для гостей] / Какой инструмент использовать для создания универсальной формы для C++ программ?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]