|
2 / 2 / 0
Регистрация: 05.12.2015
Сообщений: 193
|
|
Как создаются графические оболочки для программ на Си?28.06.2023, 18:08. Показов 8053. Ответов 122
Метки нет (Все метки)
0
|
|
| 28.06.2023, 18:08 | |
|
Ответы с готовыми решениями:
122
Графические оболочки |
|
Злостный нарушитель
10890 / 5826 / 1288
Регистрация: 12.03.2015
Сообщений: 26,891
|
|
| 29.06.2023, 08:04 | |
|
0
|
|
|
Нарушитель
|
|
| 29.06.2023, 08:09 | |
|
Catstail, GUI - такая гадость, которую ни на каком ЯП не рационально писать.
Тех же библиотек полно, но фактически GTK и Qt - лютая дрянь, wxwigets - в ту же степь, про иксовые нативные библиотеки вообще молчу... Остаются лишь примитивные вещи типа nuklear. Ну, а некоторые не гнушаются сами на чистом OpenGL писать.
0
|
|
|
4149 / 2727 / 433
Регистрация: 09.09.2017
Сообщений: 12,086
|
|||
| 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
|
||
|
4149 / 2727 / 433
Регистрация: 09.09.2017
Сообщений: 12,086
|
||||
| 29.06.2023, 12:10 | ||||
|
1
|
||||
|
Нарушитель
|
||
| 29.06.2023, 12:12 | ||
|
Ну, а если нужно для "чужого дяди" сделать интерфейс управления железякой, я рисую чертов веб-интерфейс - это проще, да и можно хоть со смартфона работать… Правда, веб-интерфейсы я жутко не люблю (html/css/javascript — это просто треш какой-то!), но что поделать? standalone клиент-серверные приложения я рисовать не собираюсь. Хотя пробовал немного с nuklear - там несложно и все нужные виджеты есть. А для себя любимого - всегда CLI. Это намного удобней GUI и отлично автоматизируется.
0
|
||
|
4149 / 2727 / 433
Регистрация: 09.09.2017
Сообщений: 12,086
|
||
| 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
|
|
|
4149 / 2727 / 433
Регистрация: 09.09.2017
Сообщений: 12,086
|
|||
| 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 / 67
Регистрация: 09.03.2016
Сообщений: 4,342
|
|
| 29.06.2023, 18:04 | |
|
0
|
|
|
638 / 396 / 67
Регистрация: 09.03.2016
Сообщений: 4,342
|
||||||
| 29.06.2023, 18:10 | ||||||
|
На SFML удобнее. Кнопочки движочки. В нём само собою предусмотрено.
В интернете поковыряться и находишь. Ползунки правда сам изобретал.
0
|
||||||
|
638 / 396 / 67
Регистрация: 09.03.2016
Сообщений: 4,342
|
||
| 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 / 67
Регистрация: 09.03.2016
Сообщений: 4,342
|
||
| 29.06.2023, 18:36 | ||
|
Зачем тогда было свою api писать? Поройся в интернете и ни чего делать не надо.
0
|
||
|
638 / 396 / 67
Регистрация: 09.03.2016
Сообщений: 4,342
|
|
| 29.06.2023, 18:37 | |
|
0
|
|
|
638 / 396 / 67
Регистрация: 09.03.2016
Сообщений: 4,342
|
|
| 29.06.2023, 18:39 | |
|
Я как бы знания получаю...
Не по теме: Чё.... Опять где то наказали?
0
|
|
| 29.06.2023, 18:39 | |
|
Графические оболочки Linux Иксы и графические оболочки Графические оболочки линукс Графические оболочки под freeDOS Не создаются ярлыки на рабочем столе при установке программ Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Беседа с ИИ о программистах, недопускающих к созданию и правке кода генеративные ИИ и причины этого
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 и пр.
Работая с форумом и нейросетями в браузере часто хочется что-то подкорректировать или добавить какого-то функционала.
Ниже прикреплён. . .
|
|
Программа опроса у.з. расходомера SLS-720F
Argus19 02.09.2026
Программа опроса у. з. расходомера SLS-720F
Программа опрашивает один раз в минуту три ультразвуковых расходомера SLS-720F через интерфейс RS-485 по протоколу Modbus RTU.
Опрашиваются регистры. . .
|
Hyper-V: Компьютер должен поддерживать доверенный платформенный модуль 2.0.
Maks 31.08.2026
При установке Windows 11 на виртуальную машину Hyper-V 2-го поколения вылезла такая ошибка:
Решение: в параметрах виртуальной машины, в разделе "Безопасность" (Security) активировать флаг. . .
|
Архитектура биовида Стива в Майнкрафте: Зачем бонобо кубический каннибализм
anaschu 30.08.2026
Кубический Вагинокапитализм в Minecraft: Математический инвариант ОДУ и рок Стивов-бонобо
Главная задача разработанной «Модели Всего» — наглядно продемонстрировать наличие системной «судьбы». . .
|
Оттачиваю умение писать js программы.
russiannick 30.08.2026
Проектом выходного дня стало написание Книги шифров Виженера. Итогом стала версия 200, синий туман.
Синий туман назван так, потому что замораживает текст под собой. Нажатие синих кнопок управляют. . .
|