|
2 / 2 / 0
Регистрация: 05.12.2015
Сообщений: 193
|
|
Как создаются графические оболочки для программ на Си?28.06.2023, 18:08. Показов 8194. Ответов 122
Метки нет (Все метки)
0
|
|
| 28.06.2023, 18:08 | |
|
Ответы с готовыми решениями:
122
Графические оболочки |
|
Нарушитель
10897 / 5831 / 1289
Регистрация: 12.03.2015
Сообщений: 26,916
|
|
| 29.06.2023, 08:04 | |
|
0
|
|
|
Нарушитель
|
|
| 29.06.2023, 08:09 | |
|
Catstail, GUI - такая гадость, которую ни на каком ЯП не рационально писать.
Тех же библиотек полно, но фактически GTK и Qt - лютая дрянь, wxwigets - в ту же степь, про иксовые нативные библиотеки вообще молчу... Остаются лишь примитивные вещи типа nuklear. Ну, а некоторые не гнушаются сами на чистом OpenGL писать.
0
|
|
|
4150 / 2728 / 433
Регистрация: 09.09.2017
Сообщений: 12,087
|
|||
| 29.06.2023, 08:29 | |||
|
1
|
|||
|
Супер-модератор
|
|||
| 29.06.2023, 10:54 | |||
) Не вижу противоречия. Это сделано один раз. А пользователи gtk (и любого подобного пакета) будут работать на более высоком уровне иерархии и им будет значительно легче.Добавлено через 2 минуты Ну, а OpenGL вообще здесь не при чем - это не GUI, а 3D-графика.
2
|
|||
|
Нарушитель
|
||
| 29.06.2023, 11:26 | ||
|
1
|
||
|
Нарушитель
|
||
| 29.06.2023, 11:54 | ||
|
Кстати, в последних Qt можно вместо иксов тоже использовать OpenGL. Но есть проблема: если у меня на одном компьютере карта nvidia с блобом, а на другом - что угодно другое, между ними opengl'ные приложения по ssh работать не будут, и даже virtualgl не спасает, к сожалению. Поэтому кое какие вещи мне пришлось сетевыми делать.
0
|
||
|
4150 / 2728 / 433
Регистрация: 09.09.2017
Сообщений: 12,087
|
||||
| 29.06.2023, 12:10 | ||||
|
1
|
||||
|
Нарушитель
|
||
| 29.06.2023, 12:12 | ||
|
Ну, а если нужно для "чужого дяди" сделать интерфейс управления железякой, я рисую чертов веб-интерфейс - это проще, да и можно хоть со смартфона работать… Правда, веб-интерфейсы я жутко не люблю (html/css/javascript — это просто треш какой-то!), но что поделать? standalone клиент-серверные приложения я рисовать не собираюсь. Хотя пробовал немного с nuklear - там несложно и все нужные виджеты есть. А для себя любимого - всегда CLI. Это намного удобней GUI и отлично автоматизируется.
0
|
||
|
4150 / 2728 / 433
Регистрация: 09.09.2017
Сообщений: 12,087
|
||
| 29.06.2023, 14:05 | ||
|
Вы же вроде с nuklear работали, там есть примеры и для X11, и для SDL, и для OpenGL1 over SDL и много для чего еще.
2
|
||
|
Супер-модератор
|
|
| 29.06.2023, 16:31 | |
|
Eddy_Em, COKPOWEHEU - не кажется, что мы довольно далеко "отгребли" от вопроса TC? Кстати, с т.з. программиста, openGL - это API. И win GDI - тоже API. Как я и написал в самом начале, нужно смотреть в сторону API.
0
|
|
|
4150 / 2728 / 433
Регистрация: 09.09.2017
Сообщений: 12,087
|
|||
| 29.06.2023, 16:50 | |||
|
И по области применения они здорово отличаются. OpenGL это чисто графическая библиотека, причем заточенная под трехмерку. Она даже окно себе создать не может. Зато быстрая и кроссплатформенная. Соответственно, требует немалого времени на освоение. Как результат, используется когда нужна высокая производительность в работе со сложной графикой. WinGDI, насколько я помню - базовая рисовалка, специфичная для winapi, аналог cairo. В составе windows идет по умолчанию, достаточно примитивная и простая в освоении, но по производительности - "лучше, чем ничего". Стоит использовать для решения локальных задач, когда тянуть что-то более серьезное смысла нет. Нарисовать свой виджет, простенькую инфографику. Причем, важно, windows-only. Кликните здесь для просмотра всего текста
Кстати о cairo (примитивная рисовалка для gtk). Мне как-то пришлось ей воспользоваться именно чтобы нарисовать виджет, которого в базовом наборе не было - вывод графика. Так-то я бы с радостью взял для этой цели OpenGL, но в виндовом порте соответствующий компонент не работал, пришлось извращаться. Но при скорости обновления данных раз в полминуты мне его возможностей хватило.
Для GUI же пользоваться ни тем, ни другим неэффективно. Есть ведь специализированные библиотеки вроде тех же gtk, Qt, nuklear. Да, они работают поверх каких-нибудь X11, winapi, OpenGL - но вот это никакого значения не имеет. Взаимодействуете-то вы с, например, Qt и используете его API.
0
|
|||
|
Модератор
|
|||
| 29.06.2023, 17:15 | |||
Сообщение было отмечено Catstail как решение
Решениеwingdi бывают имена файлов или пакетов обёрток к разным языкам, но не название API. А там где нужна MS предлагает DirectX. Но всё это, OpenGL, DirectX, SDL, не про GUI, в 2D они только могут геометрические фигуры рисовать, ну заливать их текстурами. Поскольку ТС не спрашивал на каком ему языке программу с графической оболочкой делать, то я и предложил gtk. Потому что всё остальное или не С, или ещё хуже.
1
|
|||
|
638 / 396 / 68
Регистрация: 09.03.2016
Сообщений: 4,370
|
|
| 29.06.2023, 18:04 | |
|
0
|
|
|
638 / 396 / 68
Регистрация: 09.03.2016
Сообщений: 4,370
|
||||||
| 29.06.2023, 18:10 | ||||||
|
На SFML удобнее. Кнопочки движочки. В нём само собою предусмотрено.
В интернете поковыряться и находишь. Ползунки правда сам изобретал.
0
|
||||||
|
638 / 396 / 68
Регистрация: 09.03.2016
Сообщений: 4,370
|
||
| 29.06.2023, 18:16 | ||
|
Букоф конечно больше, но если фрамеворк ни чего не рисует, то приходиться. Привинчивать для этого SFML, как то не хотелось... Ну если там пара кнопок пара надписей, то нету ни чего плохого и в вин апи. Образец из загашника вынимаешь и вперёд. Работает быстро за то...
1
|
||
|
Нарушитель
|
||||||
| 29.06.2023, 18:20 | ||||||
|
Наталья8, зачем такой примитивной штуке рисовать GUI? Там тупо достаточно скрипт накатать - обертку для ffmpeg, который и будет делать нужное. Ну или alias (не знаю, правда, возможно ли такое в форточках). Вот, скажем, так:
recdesktop file.mkv, а когда надо заканчивать - жамкаю ctrl+c. Можно вообще начало и конец записи оформить самостоятельными скриптами (файл будет иметь имя вроде дата-время.mkv) и повесить начало и конец на хоткеи.В общем, не надо рисовать на каждый чих GUI: в подавляющем большинстве случаев можно совершенно спокойно без него обойтись. Даже в винде (особенно современной).
0
|
||||||
|
638 / 396 / 68
Регистрация: 09.03.2016
Сообщений: 4,370
|
||
| 29.06.2023, 18:36 | ||
|
Зачем тогда было свою api писать? Поройся в интернете и ни чего делать не надо.
0
|
||
|
638 / 396 / 68
Регистрация: 09.03.2016
Сообщений: 4,370
|
|
| 29.06.2023, 18:37 | |
|
0
|
|
|
638 / 396 / 68
Регистрация: 09.03.2016
Сообщений: 4,370
|
|
| 29.06.2023, 18:39 | |
|
Я как бы знания получаю...
Не по теме: Чё.... Опять где то наказали?
0
|
|
| 29.06.2023, 18:39 | |
|
Графические оболочки Linux Иксы и графические оболочки Графические оболочки линукс Графические оболочки под freeDOS Не создаются ярлыки на рабочем столе при установке программ Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Запустил конкурс "тем и промптов для текстовых квестов созданных почти чисто ИИ"
Adler 06.10.2026
Всем привет!
За последние три-четыре дня я создал более 16 текстовых квестовых игр используя преимущественно по одному запросу к ИИ на игру. Мне так понравилось смотреть все ветки/ сцены во всех. . .
|
ИИ не может найти нужный язык в списке
Supersumestria 05.10.2026
Я ему даю вот такое изображение и прошу найти и подчеркнуть немецкий язык.
Возвращает он вот это:
https:/ / i. **********/ vqBWLe2. png
Нужную строчку в 3й колонке просто выдумал. .
Это. . .
|
Новая последняя моя музыка в SUNO
zorxor 05.10.2026
Здравствуйте, дорогие мои друзья! С большой радостью я хотел бы представить вам свою новую последнею музыку, которую сгенерировала мне по моей просьбе нейросеть SUNO. С уважением, zorxor.
Это. . .
|
Программный домашний кинотеатр
russiannick 27.09.2026
Сподобился на программный домашний кинотеатр. В качестве ЯВУ по традиции выбрал js.
В помощники взял Яндекс-Алису.
Было создано три зала на разные интересы.
исторические и ретро
сериал Хичкок. . .
|
|
Беседа с ИИ о программистах, недопускающих к созданию и правке кода генеративные ИИ и причины этого
zorxor 21.09.2026
Раньше я радовался или получал некоторые эмоции, пусть небольшие, но всё же, от самого процесса написания кода, рекомпиляции и запуска, видя постепенное развитие программы и прочее. А теперь лень. . .
|
Мобильное приложение ColorStep
pavlinmavlin 17.09.2026
Реализовал приложение Красный, Зеленый, Синий в Unity3d + c#.
Название изменил на ColorStep.
Приложение прошло модерацию и теперь доступно для скачивания. Делал его сам, шаг за шагом — и вот,. . .
|
Запрет дублирования строк в табличной части
Maks 13.09.2026
Реализация из решения ниже выполнена на нетиповом справочнике "Нормы ТО" с табличной часть "Виды ТО", разработанного в КА2, со следующими реквизитами:
- ВидТО (СправочникСсылка. ВидыТО);
- ВидГСМ. . .
|
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Jin X 06.09.2026
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Работая с форумом и нейросетями в браузере часто хочется что-то подкорректировать или добавить какого-то функционала.
Ниже прикреплён. . .
|