我想深入了解这方面的知识(我想也有人与我一样),请各位多多指教!
如:让自已编写(定义)的一个类,如何能够在整个项目中自由使用,而不会受到窗体、单元的限制!就像系统的类一样,同一项目中大家都可调用、继承等?  这样要如何创建呢?

解决方案 »

  1.   

    Delphi中只有System和SysUtils单元是不需要用户自己加到Uses列表里面,而是由Delphi隐含包含的!如果你希望自己定义的类可以自由使用,很简单,单独定义个单元,例如MyUnit,然后在里面进行你的类的定义,最后在所有需要使用该类的单元的Uses列表里面添加该单元的名称即可!有窗体和无窗体的类没有什么大的区别!
    无窗体类的定义和有窗体类的定义完全一致,定义完在使用前都需要调用构造器进行实例化,最后都需要释放掉
      

  2.   

    无窗体的类一般从TObject继承,如果是制作非可视组件类,从TComponent继承,可视类根据其功能,可以从各种现有其它类继承,
    具体的东西,以两句说不清楚,你还是找两个程序读一下吧。
      

  3.   

    在此先谢各位的发言!!!
    如我想创建一个单独放自定义类的单元UmyClass 是否与在工程中创建一个窗体一样呢?从file-->new-->form   然后在里写代码就行了,还是其它的方式?
      

  4.   

    FrameSniper:Delphi中只有System和SysUtils单元是不需要用户自己加到Uses列表里面,而是由Delphi隐含包含的!是这样吗?你运行下面这段代码试试……
    program Project1;uses
       Dialogs
       //,SysUtils     //注释掉这行看看datetostr他认不认识?
       ;{$R *.res}
    Function WinMain(hInstance     : HINST;
                      hPrevInstance: HINST;
                      lpCmdLine    : PChar;
                      nCmdShow     : Integer): Integer; stdcall;
    Begin
      showmessage(datetostr(date));
    end;
    begin
    WinMain(hInstance, hPrevInst, CmdLine, CmdShow);
    end.
      

  5.   

    难道不是吗,你什么时候需要手动把这两个单元自己加到Uses列表里面了?这些工作都是Delphi自动隐含就给你进行了,不需要用户来管理的!
      

  6.   

    运行我上面那段代码,SysUtils就要自己加
      

  7.   

    谢谢各位发言!
    那我想把好几个类放到同一个方件中,而不要一个类(组件)放一个文件,哪要如做创建这个文件呢?是与创一件窗体一样呢还是从 Component-->new Component里创建呢?
    我没有编类(组件)的经验,有经验的高手能否介绍些,当个入门!
      

  8.   

    File|New|Unit//一例如下:
    unit unitname;interface
    uses
     Classes;type
      TClass1=class(TComponent)
        constructor Create(AOwner:TComponent);override;//视需要覆盖基类的构造函数
        destructor Destroy;override;//视需要覆盖基类的解构函数 
      private
        FProp1:Integer; //一个私有成员
        procedure Method1(...);//一个私有方法
      public
        procedure Method2(...);//一个公有方法
         
      published
        Property Prop1:Integer read FProp1 write FProp2;//一个公开属性
      end;    TClass2:=class(TBaseClass2)
      public
        procedure Method1(...);
      end;implementation
    //下面实现 TClass1
    constructor TClass1.Create(AOwner:TComponent);
    begin
      inherited;//视需要继承基类的构造器行为
      ...//自己的处理
    end;
    destructor TClass1.Destroy;
    begin
      ...//自己的处理
      inherited;//继承基类的解构器行为
    end;
    procedure TClass1.Method1(...);
    begin
    ..//
    end;
    procedure TClass1.Method2(...);
    begin
    ..//
    end;//下面实现 TClass2
    procedure TClass2.Method1(...);
    begin
    ..//
    end;
      

  9.   

    我建议你去读<delphi高手突破》那里面对类的描述很精彩