1. Qt
Qt是一个跨平台的C++应用程序开发框架。广泛用于开发GUI程序,这种情况下又被称为部件工具箱。也可用于开发非GUI程序,例如控制台工具和服务器。
2. MFC
微软基础类库(英语:Microsoft Foundation Classes,简称MFC)是一个微软公司提供的类库(class libraries),以C++类的形式封装了Windows API,并且包含一个(也是微软产品的唯一一个)应用程序框架,以减少应用程序开发人员的工作量。其中包含的类包含大量Windows句柄封装类和很多Windows的内建控件和组件的封装类。
3. WxWidgets
wxWidgets(/wɪksˈwɪdʒɪts/,原名wxWindows[2])是一个开放源代码且跨平台用来创建图形用户界面(GUI)的对象工具集(widget toolkit)程序库。wxWidgets原创是由Julian Smart于1992年在爱丁堡大学首先开发。
wxWidgets使采用其库所开发的图形接口软件只需要对源代码做少量更改(或者完全不用更改),就能在各种不同的作业平台上编译并执行。目前可支持Windows、Apple Macintosh、Linux/Unix(转译成X11、GTK+、Motif等库)、OpenVMS、以及OS/2,入式的版本也正在开发中。
库本身使用C++语言开发,但也有其它不同编程语言的绑扎,例如:Python(wxPython)、Lua(wxlua)、Perl(wxPerl)、Ruby(wxRuby)、Smalltalk(wxSmalltalk)、Java(wx4j)、甚至是JavaScript(wxjs)等。
4. FLTK
FLTK是一个跨平台的C++GUI工具集,用在UNIX/Linux、微软Windows和Mac OS X上。FLTK提供现代的GUI功能,除却膨胀,通过OpenGL和内建的GLUT模拟器提供3D图形支持。最初由Bill Spitzak开发,当前由全世界一小组开发者使用美国一个中心仓库维护。
FLTK被设计足够小和模块化以被静态链接,但作为共享库工作良好。FLTK同时包含一个优秀的称为FLUID的UI构建器,可以被用来在几分钟内创建应用程序。
5. TGUI
TGUI 是一个跨平台的现代 c++ GUI 库。虽然 TGUI 是为 SFML 创建的,但它现在也有内置的 SDL 和 GLFW 后端。
6. Nana
Nana 是一个用现代 C++11 编写的跨平台界面库。Nana 是一个类似于 C++ 标准的 GUI 库,旨在让开发人员轻松创建具有现代 C++ 风格的跨平台 GUI 应用程序。目前,它定期在 Linux(X11) 和 Windows 上进行测试,并在 macOS 和 FreeBSD 上进行实验。
7. Duilib
Duilib 是 Windows 系统下的开源的 DirectUI 界面库(遵循 BSD 协议),完全免费,可用于商业软件开发。
Duilib 可以简单方便地实现大多数界面需求,包括换肤、换色、透明等功能,支持多种图片格式,使用 XML 可以方便地定制窗口,能较好地做到 UI 和逻辑相分离,尽量减少在代码里创建 UI 控件。目前,Duilib 已经在国内有较为广泛的使用。
网易 Duilib 使用 C++11 重写,在其原有基础上做了较大重构,搭配谷歌的基础组件 Base 库、基于 Chromium 的 WebView 框架 CEF 以及常用的 UI 组件,形成了一套功能强大、简单易用的完整桌面 UI 开发框架。
8.GTKMM
gtkmm(以前称为gtk–或gtk minus minus )是流行的 GUI 库GTK+的官方C++接口。GTK+是当前最流行的图形界面开发库之一。使用gtkmm,你不但可以从代码还可以用Glade来创建用户界面。不过需要libglademm的配合。
9. U++
U++ 承诺从根本上降低典型桌面应用程序的代码复杂性。
10. Dear ImGUI
Dear ImGui是一个用C++编写的即时模式图形用户界面,具有各种图形 API(Allegro 5、DirectX、GLFW、iOS、Marmalade、Metal、OpenGL、SDL2 和 Vulkan)的后端。
参考链接:https://philippegroarke.com/posts/2018/c++_ui_solutions
评论记录:
回复评论: