【发布时间】:2010-04-06 17:00:06
【问题描述】:
是否有任何用于 C 的高级、跨平台和抽象(使用简单)的小部件工具包,既轻量级又快速,或者可以为其他工具包编译,例如 Qt 和 GTK+?
编辑: 大多数 C++ 库都缺少 C 绑定,因此它们几乎没有(或没有)帮助。
【问题讨论】:
-
gtk 本身是跨平台的,并且是用 C 编写的
标签: c user-interface qt widget gtk
是否有任何用于 C 的高级、跨平台和抽象(使用简单)的小部件工具包,既轻量级又快速,或者可以为其他工具包编译,例如 Qt 和 GTK+?
编辑: 大多数 C++ 库都缺少 C 绑定,因此它们几乎没有(或没有)帮助。
【问题讨论】:
标签: c user-interface qt widget gtk
enlightenment 实现了真正的跨平台,从 Windows CE 到 WIndows 7,从 Linux 到嵌入式 Linux,从 Mac OS 到 Mac OS X,它轻巧
【讨论】:
所有 GUI 工具包都有其怪癖,需要一些时间来熟悉。
如果你的意思是纯 C,那么GTK+ 是最有可能的选择,我熟悉的其他任何一个都是用 C++ 编写的,所以 C++ 是它们的本地语言绑定。我用 C 语言用 GTK+ 编写了一个简单的应用程序,一旦你习惯了 container 布局控制方法,它就会变得非常合理。它在GNU LGPL 2.1 下获得许可。
另一个影响选择的因素是许可要求,通常是您使用的是特定许可的开源还是专有应用程序。
wxWidgets 使用LGPL-like 许可证来允许开源和专有使用。
Qt 在various licenses、GPL、LGPL 和非免费(免费)商业许可下可用,并且本机是 C++ 绑定。
【讨论】:
我的选择是 FLTK (http://www.fltk.org),但它和前面提到的 wxWidgets 都不是用于 C 的。它们是 C++ 库。
【讨论】: