2010-06-14 2 views
2

Можно создать дубликат:
Cross Platform C library for GUI Apps?Есть ли какая-либо кроссплатформенная графическая библиотека для языка C?

Есть ли кроссплатформенный GUI библиотека для языка C? (Я имею в виду, по крайней мере, win mac lin). Если есть какая-либо XML-подобная модель редактирования графического интерфейса, любые графические визуальные программы для графического интерфейса, которые будут решены!)

+1

Возможный дубликат: http://stackoverflow.com/questions/2018850/cross-platform-c-library-for-gui-apps? – evilpie

+0

* Xlib * (с сервера X), кто-нибудь? Не то, чтобы я действительно рекомендовал его ... (я бы пошел на * Gtk * в первую очередь.) – stakx

+0

Это дубликат, да, но другой - это абсолютный беспорядок вопроса. Было бы неплохо, если бы SO предпочитали более хорошие вопросы, чем старые вопросы, когда есть дубликаты. – 2015-02-28 08:50:32

ответ

2

Я использую Gtk много, это согласовано и приятно использовать. Ранее он использовался в качестве общей платформы для Gimp, но стал широко использоваться и является базовым инструментарием для настольных компьютеров Gnome под Linux.

Редактор GUI, который я использую, - Glade под Linux. Сгенерированный код может быть перекомпилирован без изменений под Windows. GLib - это базовая библиотека, которая абстрагирует файлы, сеть, предоставляет базовые типы и коллекции. Пока вы используете Glib, вы в основном независимы от ОС.

Я забыл упомянуть, что поляна хранит пользовательский интерфейс в XML и генерирует код из него. На странице поляны я увидел, что там есть версия Windows, но я не могу много рассказать о ее поведении. В Linux это вполне нормально использовать и довольно стабильно.

2

Tk - это библиотека GUI, написанная на C. Она поставляется с язык сценариев с именем Tcl. Они могут быть встроены в вашу программу на C. Они очень зрелые и относительно легкие. Вы можете вызвать инструментарий GUI из C, хотя гораздо проще сделать свой графический интерфейс в Tcl и импортировать его в свою программу на C.

Приложения, написанные на Tcl, Tk и C, очень портативны и легко распространяются. Язык - это стиль BSD, который намного либеральнее, чем лицензии GNU.

На Mac и Windows Tk по возможности использует собственные виджеты, что делает ваши приложения подходящими для каждой из этих платформ.

+0

Tcl и tk устанавливают множество загрузок в настройках ваших окон, и это выглядит ужасно устаревшим. (например, экраны на этих снимках экрана: http://tuvalu.santafe.edu/%7Evince/alphatk/intro.html) – Toad

+1

@Toad: Tcl и Tk устанавливает только «множество вещей», когда вы устанавливаете дистрибутив из какого-то места, например ActiveState. Когда вы делаете свою собственную программу C, это еще одна история. Вполне возможно иметь один исполняемый файл, включающий все Tcl и Tk, а также ваше приложение и любые другие библиотеки, изображения, звуки и т. Д., Которые вам нужны всего за пару мегабайт. Что касается перспективных дат, это субъективно и часто не является фактором. Tk использует собственные виджеты на Mac и Windows, поэтому внешний вид скорее отражает дизайнерские навыки, чем ограничения инструментария. –

1

GTK - это кросс-платформенный графический интерфейс для C (а не C++, хотя для него существуют обертки и многие языки).

5

Посмотрите на IUP Toolkit. Он написан в основном на языке C, а также легко связан с Lua.

Смежные вопросы