術語VCL的變更:從VCL到CLX

術語VCL的變更:從VCL到CLX
                                              Gif.gif此主題相關圖片如下:
2003725253.gif

                                              Gif.gif此主題相關圖片如下:
200372571.gif

術語VCL的變更:VCL->CLX
VCL(Visual Component Library):是對整個Delphi部件框架(Delphi component framework)的不確切的稱呼,因爲,這個框架中多數部分並不是可視的。這在整個Borland開發人員中造成了混亂。在Borland開發出Kylix後,Borland官方最終將Delphi部件框架命名爲CLX(Component Library for Cross-Platform)。
CLX現在是描述使用在Delphi, C++Builder, 和 Kylix中的整個部件框架的官方術語。而VCL僅僅是一套部件子集,該部件子集爲基於Win32 API的應用程序提供了可視的編程接口。 在下面的架構圖上,你能清楚地看到VCL處在右上角。
Jpg.gif此主題相關圖片如下:
2003724379.JPG
 

VisualCLX與VCL的比較
    在Kylix中,Borland引出了VisualCLX。VisualCLX是一套使用在跨平臺圖形應用程序中的部件子集。Qt, 來自於TrollTech公司的類庫, 在VisualCLX中被使用來作爲圖形API 。VisualCLX在各版本的Kylix、Delphi 6和C++Builder 6以上中均可使用。在高層次上,VisualCLX 控件的接口和VCL控件的接口保持一致。他們完成同樣的功能,在同一個應用程序中是相互排斥的。CLX支持編寫同樣的代碼來同VCL 和VisualCLX的屬性、方法和事件驅動進行溝通。你能通過引用適當的單元名稱來辨別使用哪種控件集,如下面的代碼片段的演示。

{$ifdef VisualCLX}
uses
  Classes, QControls, QComCtrls;
{$endif}
{$ifdef VCL}
uses
  Classes, Controls, ComCtrls;
{$endif}

... 

{ the same source code for talking to either 
set of controls goes here, such as }

Form1.Caption := 'Hello World!';
Button1.Enabled := True;

....

 
VisualCLX 和VCL並列並互斥。
Jpg.gif此主題相關圖片如下:
2003724637.JPG


VisualCLX在Linux上運作時, VisualCLX 調用Linux上的Qt的類庫,而Qt調用Xwindow的功能來進行圖形顯示。
Jpg.gif此主題相關圖片如下:
2003724258.JPG


VisualCLX在Win32上運作時, VisualCLX 調用Win32上的Qt的類庫,而Qt調用Win32的功能來進行圖形顯示。
Jpg.gif此主題相關圖片如下:
2003724301.JPG


VCL在Win32上運作時, VCL 調用Win32 APIs來進行圖形顯示。
Jpg.gif此主題相關圖片如下:
20037242.JPG

 
當前框架的選擇
以下幫助說明對於你在進行圖形界面應用程序時,在VCL或VisualCLX中作出選擇時,將非常有用。
•   如果你準備使你的可視應用程序在Windows看起來更好,請使用VCL。
•   如果你準備使你的可視應用程序可同時運行在Windows和Linux,請使用Visual CLX。對應Windows,你需要分發Qt 運行時(run-time)庫和包。而Qt已經包括在主流的Linux系統之中。
不論你使用VCL還是VisualCLX,你的應用程序都要使用CLX,它是Delphi的框架(framework)。
包含VCL 和VisualCLX的可視部件包只有9個,而整組成CLX的包共有40個。CLX中大量的類和部件原本就是不可視的,他們對於不同的開發平臺而言,具有一致的編程接口。
發佈了66 篇原創文章 · 獲贊 0 · 訪問量 9萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章