阅读更多

9顶
1踩

编程语言

翻译新闻 8 个免费实用的 C++ GUI 库推荐

2012-05-24 17:19 by 副主编 wangguo 评论(5) 有22718人浏览
GUI(Graphical User Interface,图形用户界面)是指采用图形方式显示的计算机操作用户界面。与早期计算机使用的命令行界面相比,图形界面对于用户来说在视觉上更易于接受。

本文整理了8个免费、实用的C++ GUI库,这些库可以帮助你在下一个项目中创建具有吸引力的、令人印象深刻的程序界面。

1.  Qt

Qt是一个跨平台应用和用户界面开发框架,它包括一个跨平台类库、集成开发工具和跨平台IDE。通过使用Qt,你可以一次性开发应用程序和用户界面,然后将其部署到多个桌面和嵌入式操作系统,而无需重复编写源代码。



2.  Fltk

FLTK(The Fast Light Toolkit),一个轻量级的GUI开发库。FLTK除了具有基本的GUI功能之外,还拥有其他一些特性,如跨平台、内置OpenGL、速度更快、尺寸更小、协议宽松等。FLTK可以在UNIX/Linux、Windows和Mac OS X平台上运行。



3.  Fox Toolkit

FOX是一个基于C++的工具,可以帮助你轻松、高效地开发GUI。它提供了一个广泛的控件集合,以及一些实用的功能,如拖放、选择以及用于3D图形操作的OpenGL部件。FOX还提供了图标、图像以及其他便利的功能,如状态栏帮助和提示等。



4.  Gpe Phone

GPE Phone是一个用于开发和部署基于GTK / GPE实现、兼容LIPS的软件栈。它包含了一套应用程序、库和文档,以帮助开发者针对移动电话和类似设备构建应用程序。



5.  LGI

LGI是一个GUI框架,用于抽象出你的可移植代码的所有操作系统依赖,它可以处理所有的图形界面函数、线程、信号量、网络连接和许多其他字节码,帮助开发者构建小型、快速和可靠的应用程序。



6.  Wx Windows

wxWidgets是一个C++库,帮助开发人员创建可运行于32位、64位的Windows、Mac OS X、Linux和UNIX上的应用程序,也可以用来创建移动平台上的应用程序,包括Windows Mobile、iPhone SDK和嵌入式GTK+等。



7.  Ultimate++

Ultimate++是一个基于C++的、跨平台快速应用开发框架,旨在提高程序员的生产力,它包括一系列库(GUI、SQL等)以及一个集成开发环境。



8.  Zoolib

ZooLib允许你使用单一代码库,来创建可运行于多个平台/处理器上的应用程序,部分应用可能需要很少的平台专属源码。ZooLib非常简单易用,你可以通过条件编译来轻松集成它。



原文:8 Free and Useful C++ GUI Libraries
  • 大小: 51.4 KB
  • 大小: 213 KB
  • 大小: 189.3 KB
  • 大小: 142.7 KB
  • 大小: 208.1 KB
  • 大小: 65.6 KB
  • 大小: 59.9 KB
  • 大小: 201.5 KB
9
1
评论 共 5 条 请登录后发表评论
5 楼 dieslrae 2012-05-27 01:10
mathgl 写道
里面真正好用,并且是广发应用的

就是qt & wxwidgets。不过后者要不是有wxpython,估计也不好用。

还是和Mfc用一堆macro 搞出来的事件处理,看了就头大。

是啊,wxPython写起来比较爽
4 楼 qimo601 2012-05-26 00:24
就用了Qt和MFC。感觉Qt更适合初学的。网络,数据库,图像处理,多线程模块,已经满足基本使用需求。
Qt更加面向对象,符合编程习惯,而且速度上比java要好的多。
Qt技术团队更新也很快,现在Qt5已经出来了,相信未来在嵌入式,医疗软件,手机软件等方向上肯定会有更广阔的前景。
3 楼 mathgl 2012-05-25 17:36
里面真正好用,并且是广发应用的

就是qt & wxwidgets。不过后者要不是有wxpython,估计也不好用。

还是和Mfc用一堆macro 搞出来的事件处理,看了就头大。
2 楼 jjcang 2012-05-25 12:13
qt无疑是最好的
1 楼 rainv 2012-05-24 18:58
只用过wxWidget,用来进行跨平台的快速开发还是可以的,文档全,插件库包含很多方面,如线程,网络,图像处理,特别是字符串处理是utf-8(unicode).使用原生控件,总体说还是不错的,开发的程序还挺稳定的。缺点就是国内的用的少?C++

发表评论

您还没有登录,请您登录后再发表评论

相关推荐

  • 万一博客 最新

    自己写的一个下载万老师博客的东西 下载看也编译成chm 了有要的朋友可以看看,不过有一些小小的问题还待修改

  • delphi CXGRID用法 (取行、列值;定位选中某行等等)

    CXGRID用法(取行、列值;定位选中某行等等) DelphiCxgrid获取选中行列,排序规则,当前正在编辑的单元格内的值 cxGrid1DBTableView1.Controller.FocusedRowIndex当前行号 cxGrid1DBTableView1.Controller.FocusedRow当前行 cxGrid1DBTableView1.Cont...

  • 【delphi】常用语言特性:接口、匿名方法、泛型

    Delphi 自第 7 版以来已经有了长足的进步,目前已经到了最新版本的Delphi 12.2。当然也包括其他语言特性,例如多态性。

  • delphi DrawText多行文本垂直居中

    procedure TForm1.Button4Click(Sender: TObject); var Text: string; R, TextRct: TRect; H: Integer; begin R := rect(10, 10, 200, 100); Canvas.Rectangle(R); Text := 'Demo Line 1'#13'Demo Line 2'#13'Demo Line 3'#13'Demo Line 4'; TextRct := R; H ...

  • IsDBCSLeadByte函数

    IsDBCSLeadByte函数用于用于判断一个字符是不是多字节字符,如果是返回一个非零数,如果不是返回零,利用它可以对字符串进行处理。下面用此函数提取汉字1”文件”—“new”—“Application”在窗体放置一个Edit 一个Label 一个Button按钮,设置Button的caption为提取汉字。2双击Button输入如下代码:procedure TForm1.Button1Click(Sender: TObject);var  len,j:integer;  s:string;  str:s

  • (Delphi中处理字符串)截取中文字符和英文字符,去除所有数字

    function TFmxsdd_dzbh.getTheUnit(str:string):string; var n,i :integer; ch: byte; s:string; begin s:=''; n:=length(str); i:=1; while i<=n do begin if not (str[i] in ['0'..'9']) th

  • Delphi GDI对象之绘制文本

    基本绘图操作(Basic Drawing Operations) 现在大家已经知道Rectangle方法用来画正方形和矩形,Ellipse方法用来画圆和椭圆,MoveTo和LineTo方法则用来画线。 还有Arc方法用于画弧,Pie方法用于画饼形,一切一切都是非常基础的,没有太大的必要详细了解TCanvas的这些方法,下面开始更有趣的图形操作,这些图形操作在编写Delphi应用程序时很可能遇到...

  • DELPHI 修改系统分辨率

    unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls; type TForm1 = class(TForm) Button1: TButton; ...

  • 动态调整打印机纸张大小

    动态调整打印机纸张大小江苏省昆山市地方税务局  信息管理系统中经常要提供各种打印功能,例如报表打印、凭证打印以及发票打印。在这些打印过程中所需要纸张的大小往往是不一致的,例如,打印报表有可能使用A4 纸或A3 纸,打印凭证或发票可能需要将打印纸张设置成自定义大小。如果在同一台打印机上打印这些内容,那么就应该针对不同的打印内容设置不同的纸张尺寸。显然如果用手动的方法来设置打印机的纸张尺寸是件

  • 万一Delphi博客集

    万一Delphi博客集更新到10月31日

  • 编程使用系统热键{演示RegisterHotKey()和UnregisterHotKey()}

    PurpleEndurer 原创RegisterHotKey()================================函数功能:该函数定义一个系统范围的热键。函数原型:BOOL RegisterHotKey(HWND hWnd,intid,UINT fsModifiers,UINT vk);参数说明:hWnd:接收热键产生WM_HOTKEY消息的窗口句柄。若该参数NULL,传递给调用

  • Delphi组件开发教程指南(四)组件生成过程(TWinControl)

    ====================================================== 注:本文源代码点此下载 ====================================================== http://www.52delphi.com/list.asp?id=1199 核心提示:连载闲哥学习心得分享,供新手学习,作者博客:http

  • Delphi 10.1 Berlin下TStringGrid单元格样式设定

    设定TStringGrid的DefaultDraw = true,系统自动给表格绘制默认的样式和效果。设定自定义格式前,先填充单元格的背景色,以清除原内容。 procedure TShowDetailForm.GridForwardDrawCell( Sender : TObject; ACol, ARow : Integer; Rect : TRect; State : TGridDraw

  • delphi数据集与记录

    1.1Delphi数据库应用程序的层次结构 Delphi数据库应用程序通过数据存取构件对数据库进行访问,通过可视的数据构件(Data Control)将数据呈现给用户,并与用户进行交互。Delphi数据库应用程序的结构如下图:   图 2‑1  Delphi数据库应用程序结构图 Delphi访问数据库可以分为三级: (1)、由ADO(Active Data Objec

  • delphi公用函数

    {*******************************************************} { } { Delphi公用函数单元 } { ...

Global site tag (gtag.js) - Google Analytics