WEB开发网
开发学院软件开发Delphi 术语VCL的变更:从VCL到CLX 阅读

术语VCL的变更:从VCL到CLX

 2006-02-04 13:44:12 来源:WEB开发网   
核心提示:术语VCL的变更:从VCL到CLX 此主题相关图片如下:此主题相关图片如下:术语VCL的变更:VCL->CLX VCL(Visual Component Library):是对整个Delphi部件框架(Delphi component framework)的不确切的称呼,因为,术语VCL的变更:从VCL到CLX,
术语VCL的变更:从VCL到CLX
                       此主题相关图片如下:


                       此主题相关图片如下:


术语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处在右上角。
此主题相关图片如下:

 

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并列并互斥。
此主题相关图片如下:



VisualCLX在linux上运作时, VisualCLX 调用Linux上的Qt的类库,而Qt调用Xwindow的功能来进行图形显示。
此主题相关图片如下:



VisualCLX在Win32上运作时, VisualCLX 调用Win32上的Qt的类库,而Qt调用Win32的功能来进行图形显示。
此主题相关图片如下:



VCL在Win32上运作时, VCL 调用Win32 APIs来进行图形显示。
此主题相关图片如下:


 
当前框架的选择
以下帮助说明对于你在进行图形界面应用程序时,在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中大量的类和部件原本就是不可视的,他们对于不同的开发平台而言,具有一致的编程接口。

Tags:术语 VCL 变更

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接