由于几乎每个GUI都使用主循环来执行代码(例如修改用户界面),是否有用于抽象实际实现的库?与std::thread
类似,无论您使用哪种GUI工具包,都可以拥有一个通用界面。
OpenSource的1点奖励和2张许可证(BSD,MIT,......)。
答案 0 :(得分:2)
Zinc就是这样一个图书馆,我多年前就用它了所以它已经存在了很长一段时间(10年以上)。
Zinc提供完整源代码作为面向对象的C ++平台独立框架,用于实现跨平台应用程序的图形用户界面(GUI)。 Zinc是一个可扩展和可定制的全功能工具包,用于创建事件驱动的GUI应用程序。 Zinc适用于嵌入式和桌面平台。嵌入式平台的锌可用于实时操作系统,例如Wind River的VxWorks。 Zinc利用Zinc对象的原生平台的外观和感觉。
答案 1 :(得分:2)
如果您正在寻找快速,通用的事件循环,可以使用libev http://software.schmorp.de/pkg/libev.html。
如果您正在寻找一组包装器函数来为不同GUI的事件循环(例如Gtk,Windows,Cocoa等)提供一致的接口,那么您可以查看wxWidgets http://www.wxwidgets.org/的方式处理它(如果它)。