部件工具箱

部件工具箱,是否有廣大的使用人群,與支持的作業系統是否多樣,支持的作業系統市場占有率是否大,使用是否方便,是否有良好的"所見即所得"(WYSIWYG)的開發工具支持,是否有經濟實力的雄厚的大公司支持等幾個因素有關。

基本信息

定義

部件工具箱(widgettoolkits)亦稱為GUI工具箱(GUItoolkits),在程式設計中指的某些基本的GUI的構件元素的集合。他們一般以庫或者應用程式框架的形式出現。

成功因素

一套部件工具箱是否有廣大的使用人群,與以下幾個因素有關:支持的作業系統是否多樣,支持的作業系統市場占有率是否大,使用是否方便,是否有良好的"所見即所得"(WYSIWYG)的開發工具支持,是否有經濟實力的雄厚的大公司支持等等。

低級部件工具箱

作業系統中集成的:
Mac OS工具箱,或Macintosh API,原來是位於ROM中,但在"new world" Macs中,是放在硬碟上,在Mac OS X中的新版工具箱稱為Carbon。
Windows中使用的Windows API
與作業系統分離的:
X Window System包含了許多基本的構架塊,但通常需要通過Motif、GTK+或者Qt來使用
AMIGA OS的Intuition庫原來在Amiga的Kickstart ROM中, 從Amiga OS 2.0 起,這個庫也被放到了硬碟上,這樣第三方軟體可以對其進行修改。

高級部件工具箱

Apple Macintosh上:
Cocoa,用於Mac OS X,另見Aqua
MacApp,Macintosh 構架(framework)
MacZoop,Macintosh C++ 構架
Powerplant,Macintosh 構架
Microsoft Windows上:
Microsoft Foundation Classes(MFC),在微軟Windows平台下被廣為使用,是Windows API的外包(wrapper),不是一個單獨的工具集;
Object Windows Library,Borland公司推出的MFC替代品,改構架也是Windows API的外包,不是單獨的工具集。
Visual Component Library(VCL):Borland公司的工具集,用於其產品C++ Builder以及Delphi,也是Windows API的一個外包,不是單獨的工具集。
Windows Forms:.NET的庫類集,可進行GUI控制。
在Unix上,基於X Window系統:
Xaw,雅典娜工程中針對X Window System的部件集。
Motif,用於Common Desktop Environment。
Lesstif,Motif的開源(LGPL)版本。
跨平台,基於SVG:
airWRX 運行於快閃記憶體盤的程式框架,可以將PC主機,或者其他附近的主機,轉入多螢幕web-like數字工具區(digital workspace)。
跨平台,基於Java:
Abstract Windowing Toolkit(AWT),用於Java程式,通常在選定的平台下運行另一個工具集。
Swing,在Sun Microsystems的新版Java中,作為AWT的替代品。
Standard Widget Toolkit(SWT),Java的本地部件工具集,是Eclipse項目的一部分。SWT運行相應平台下的部件工具集(如Windows API,或者GTK+)。
跨平台,基於C或者C++,也經常與其他程式語言綁定:
Tk,Tcl以及其他高級腳本語言用到的工具集(在Python中的接口是Tkinter)。
GTK+,開源軟體(LGPL),主要針對 X Window System,其他平台下有移植或模擬;GNOME桌面環境中使用。
Qt,開源軟體(GPL/QPL),可用於Unix/Linux(X Window 中)、MS Windows、Mac OS X以及嵌入式系統;在這些平台下,也有商業版本;用於KDE。如要使用Qt工具編寫而不開放原始碼,則要購買獨立授權。
CLX(Component Library for Cross-platform,用於跨平台的組件庫),用於Borland的Delphi、C++Builder以及Kylix,以構建跨平台的應用程式。基於Qt,編程接口包裝得類似於VCL工具集。
wxWidgets(以前是wxWindows),開源軟體(LGPL),針對C++、Python以及Perl的跨平台工具集。
FOX toolkit,開源軟體(LGPL),跨平台。
fltk,開源軟體(LGPL),跨平台工具集,特點是小而快。
Lazarus(Free Pascal的Delphi)的引擎:
LCL,針對GTK 1.2 and win32(GTK2尚在開發中)的類工具集。
Amiga OS上:
BOOPSI(Basic Object Oriented Programming System for Intuition),OS 2.0時引入,增強的Intuition含有一個類系統,其中每個類都可表示一個單獨的部件,或描述一個接口事件。這導致一場革新,第三方開發員可以在各自的類系統中加以實現。可以在任何級別,針對Amiga進行面向對象編程。
MUI(Magical User Interface,神奇用戶接口):Amiga的部件類系統。
ClassAct:Amiga的另一種部件類系統,AMIGAOS 3.9時開始發展,4.0是進入GUI反應。
ReAction:ClassACT系統的進化版。

相關搜尋

熱門詞條

聯絡我們