• VCL初探


    Visual Component Library(可视化组件库)是一个设计完美的架构,作为一个很好的架构,VCL最大限度利用了继承,VCL架构的主体是由代表组件的类组成。其他的VCL类与组件没有关系,这些类完成一些杂务管理,比如像帮助程序类,并且提供一些应用服务。

    VCL类分层处理组件系统是很复杂的,值得庆幸的是,一般开始在Delphi中编程时不需要了解VCL的每个具体细节。在VCL链的顶级,将会发现TObject。如下图显示了一些主要基本类及由它们派生的类。

    0101

    TObject是所有VCL组件类的最高父类。TObject底下就是TPersistent,这个类与组件把它自身存到文件和内存性能有关,同时它也与一些杂乱的具体细节有关,这些细节是不需要了解的。对于Delphi中的程序绝大部分应用都不需要了解太多的TPersistent。

    对于组件来说,TComponent类时一个更直接的基类,这个类提供了基本组件所需要的所有功能。非可视化组件是从TComponent派生出来的,可视化组件是从TControl派生而来的。但从上面的图表来看,它是由TComponent派生而来,TControl提供了可视化组件所需要的其他一些功能,个别组件要么是从TGraphicControl派生而来,要么是从TWinControl派生而来。

    当在窗体上拖放一个组件时,Delphi就建立一个指向此组件的指针,这个组件要在窗体类中声明,这样就可以在代码中存取此组件。Delphi用组件的Name属性来声明指针变量名,当前面建立一个应用程序时,在窗体上放置一个Memo组件,这时Delphi建立一个TMemo变量,并给它取名为Memo。

    同样的,当在窗体上建立一个按钮时,Delphi会建立一个TButton变量来表示此按钮。在任何事情发生之前,Delphi已经从TForm类中派生出一个新类,当然并为此类建立了一个实例来代表此窗体。

    在用VCL工作之前,显然需要对VCL的类和组件有一定了解才行,在后面两讲中我们将讲解一些常用类。

  • 相关阅读:
    JavaScript之DOM
    MapReduce多种join实现实例分析(一)
    JavaScript的文档对象模型DOM
    JavaScript原生实现观察者模式
    Idea环境下git 图形化操作
    一分钟教你如何实现唯美的文字描边
    Redis集群
    JAVA线程池的实际运用
    Java 线程池(ThreadPoolExecutor)原理解析
    win7开始菜单路径
  • 原文地址:https://www.cnblogs.com/pchmonster/p/2319177.html
Copyright © 2020-2023  润新知