WxWidgets

wxWidgets
開發者wxWidgets開發與貢獻社群
当前版本
  • 3.2.4 (2023年11月11日;穩定版本)[1]
編輯維基數據鏈接
源代码库
  • github.com/wxWidgets/wxWidgets
編輯維基數據鏈接
操作系统跨平台
类型開發函式庫
许可协议wxWidgets函式庫許可證
网站www.wxwidgets.org

wxWidgets/wɪksˈwɪɪts/,原名wxWindows[2])是一個開放原始碼跨平台用來建立圖形使用者介面(GUI)的物件工具集(widget toolkit)程式庫。wxWidgets原創是由Julian Smart於1992年在愛丁堡大學首先開發。

wxWidgets使採用其函式庫所開發的圖形介面軟體只需要對原始碼做少量更改(或者完全不用更改),就能在各種不同的作業平台上編譯並執行。目前可支援Windows、Apple Macintosh、Linux/Unix(轉譯成X11、GTK+、Motif等函式庫)、OpenVMS、以及OS/2嵌入式的版本也正在開發中[3]

函式庫本身使用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的图形界面前端程序

參見

  • 自由软件主题
  • Microsoft Foundation Class Library
  • Qt
  • GTK+

外部連結

  • 官方網站 (页面存档备份,存于互联网档案馆
  • 官方教學文件 (页面存档备份,存于互联网档案馆
  • wxForum,非官方討論區
  • wxSnippets,wxWidgets原始碼片段蒐集
  • wxCode,wxWidgets擴充元件 (页面存档备份,存于互联网档案馆
  • wyoGuide,跨平台教學指南 (页面存档备份,存于互联网档案馆
  • wxWidgets中国爱好者邮件列表(wxChinese) (页面存档备份,存于互联网档案馆

其它程式語言支援

整合開發環境(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建立工具。

參考文獻

  1. ^ wxWidgets 3.2.4 Released. 
  2. ^ Smart, Julian; Robin Dunn. Name change. Sourceforge.net. August 2004 [2007-04-23]. (原始内容存档于2013-07-02).  引文使用过时参数coauthors (帮助)
  3. ^ 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 - 教學文件。