wxWidgets
开发者 | wxWidgets开发与贡献社群 |
---|---|
当前版本 | 3.2.0(2022年7月7日 | )
原始码库 | |
操作系统 | 跨平台 |
类型 | 开发函数库 |
许可协议 | wxWidgets函数库许可证 |
网站 | www.wxwidgets.org |
wxWidgets(/wɪksˈwɪdʒɪts/,原名wxWindows[1])是一个开放原始码且跨平台用来建立图形用户界面(GUI)的物件工具集(widget toolkit)程序库。wxWidgets原创是由Julian Smart于1992年在爱丁堡大学首先开发。
wxWidgets使采用其函数库所开发的图形接口软件只需要对原始码做少量更改(或者完全不用更改),就能在各种不同的作业平台上编译并执行。目前可支持Windows、Apple Macintosh、Linux/Unix(转译成X11、GTK+、Motif等函数库)、OpenVMS、以及OS/2。嵌入式的版本也正在开发中[2]。
函数库本身使用C++语言开发,但也有其它不同编程语言的绑扎,例如:Python(wxPython)、Lua(wxlua)、Perl(wxPerl)、Ruby(wxRuby)、Smalltalk(wxSmalltalk)、Java(wx4j)、甚至是JavaScript(wxjs)等。
使用wxWidgets开发的软件不需经过诸如虚拟机的技术就能执行,虽然在不同平台可使用相近甚至相同的原始码,但其最终编译并产出的可执行文件对所在的作业平台而言是原生的。
另外,wxWidgets不只可以用来建立GUI,它也内建了基于ODBC的数据库函数、进程间通信以及网络socket函数等的支持。
wxWidgets的许可许可证是经过开放原始码促进会认证,其本质等同于GNU宽通用公共许可证(LGPL)。然而一个例外是wxWidgets许可允许修改者以自己的许可证发布。
使用wxWidgets开发的软件
- Aegisub 开放原始码的字幕制作工具
- Amaya网页编辑工具
- aMule 基于eMule的跨平台P2P软件。
- Audacity 跨平台且开放原始码的声音编辑器。
- BitTorrent点对点文件分享peer-to-peer file sharing application
- FileZilla - 跨平台且开放原始码的FTP软件。
- Code::Blocks C/C++ IDE
- CodeLite C/C++ IDE
- ionCube PHP编码器
- PTGui 照片拼接软件
- RapidSVN Subversion客户端
- TortoiseCVS CVS客户端
- wxDownload Fast 下载管理员
- wxMaxima 电脑代数系统
- MadEdit 文本/十六进制编辑器
- FreeFileSync 文件同步工具
- smartCOM 串口调试工具,支持LINUX与WINDOWS
- HeeksCAD 三维CAD软件
- wxMP3gain MP3gain的图形界面前端程序
参见
外部链接
- 官方网站 (页面存档备份,存于互联网档案馆)
- 官方教学文件 (页面存档备份,存于互联网档案馆)
- wxForum,非官方论坛
- wxSnippets,wxWidgets原始码片段搜集
- wxCode,wxWidgets扩展组件 (页面存档备份,存于互联网档案馆)
- wyoGuide,跨平台教学指南 (页面存档备份,存于互联网档案馆)
- wxWidgets中国爱好者邮件列表(wxChinese) (页面存档备份,存于互联网档案馆)
其它编程语言支持
- wxBasic (页面存档备份,存于互联网档案馆)
- wxCaml
- wxCL (页面存档备份,存于互联网档案馆)
- wxD
- wxEiffel (页面存档备份,存于互联网档案馆)
- wxErlang
- wxHaskell (页面存档备份,存于互联网档案馆)
- wx4j(wxWidgets for Java) (页面存档备份,存于互联网档案馆)
- wxJavaScript (页面存档备份,存于互联网档案馆)
- wx.NET
- wxLua
- wxPerl (页面存档备份,存于互联网档案馆)
- wxPython (页面存档备份,存于互联网档案馆)
- wxRuby
- wxSqueak
集成开发环境(IDE)与快速开发工具(RAD tools)
- Boa Constructor (页面存档备份,存于互联网档案馆),使用wxPython的GUI开发环境。
- wxWidgets RAD工具比较 (页面存档备份,存于互联网档案馆)
- wxDesigner (页面存档备份,存于互联网档案馆),对话盒编辑器、RAD工具。
- DialogBlocks (页面存档备份,存于互联网档案馆),产生C++ 代码与XRC资源档的对话盒编辑器。
- wxGlade (页面存档备份,存于互联网档案馆),使用wxWidgets的GUI设计工具。
- CodeBlocks (页面存档备份,存于互联网档案馆),使用wxWidgets的IDE程序开发工具。
- wxDev-C++ (页面存档备份,存于互联网档案馆),基于Dev-C++开发环境,并加入wxWidgets的GUI设计工具。
- wxFormBuilder (页面存档备份,存于互联网档案馆),由C++ 写成、开放原始码的wxWidgets GUI设计工具。
- wxVS2008Integration[永久失效链接],Visual Studio .NET 2008的wxWidgets项目与类别向导。
- PythonCard (页面存档备份,存于互联网档案馆),跨平台GUI建立工具。
参考文献
- ^ Smart, Julian; Robin Dunn. Name change. Sourceforge.net. August 2004 [2007-04-23]. (原始内容存档于2013-07-02).
- ^ wxEmbedded: wxWidgets for embedded applications. Sourceforge.net. [2007-04-23]. (原始内容存档于2011-05-19).
- Cross-Platform GUI Programming with wxWidgets (页面存档备份,存于互联网档案馆) - 第一本关于wxWidgets的书籍。
- Cross-Platform GUI Programming with wxWidgets pdf (页面存档备份,存于互联网档案馆) - 电子书版本
- wxTutorial, comprehensive guide to wxWidgets (页面存档备份,存于互联网档案馆) - 教学文件。
- Drawing and Printing in C++ with wxWidgets (页面存档备份,存于互联网档案馆) - 关于wxWidgets绘图功能的教学。
- wxWidgets-related articles and tutorials (页面存档备份,存于互联网档案馆) - 教学文件。
- Introduction to wxWidgets - 给初学者的wxWidgets跨平台(Windows/Linux)开发教学。
- wx-sdl (页面存档备份,存于互联网档案馆) - wxWidgets与SDL集成教学。
- The sbVB wxWidgets course - 教学文件。