如果是一个很大的程序,把所有函数都写在一个文件里,以后查看太乱了。

解决方案 »

  1.   

    自己定义一个unit,将所有函数写到此Unit里面,然后让别的单元use
      

  2.   

    能否给个源码说明一下,我刚学delphi,很多地方不明白。
      

  3.   

    文件1:File1.pas
    内容:
    unit File1
    interface
      function fun1: boolean;  
    implementation
      function fun1:boolean
      begin   end;
    end;文件2:File2.pas
    内容:
    unit File2
    interface
    uses
      uses File1;
    implementation
      //可以使用fun1了
    end;
      

  4.   

    To: zwjchina(蒲石)我按找你的方法写,提示这样的错误。
    [Error] Unit1.pas(23): Declaration expected but 'USES' found
      

  5.   

    呵呵,我不记得文件格式了,这样看看:文件2:File2.pas
    内容:
    unit File2
    interface
    implementation
    uses
      uses File1;  //可以使用fun1了
    end;
      

  6.   

    建一个文本文件,叫File1.txt,内容为
    'abcd'
    再建一个文本文件,叫File2.txt,内容为
    function a:string;
    begin
      result := 'efgh';
    end;然后写如下语句
    procedure TForm1.Button1Click(Sender: TObject);
    {$I 'File2.txt'}
    begin
      ShowMessage({$I 'File1.txt'});
      ShowMessage(a);
    end;编译运行......HOHO
      

  7.   

    哦,是要加分号
    内容:
    unit File1;  //<<<<-----注意这里
    interface
      function fun1: boolean;  
    implementation
      function fun1:boolean
      begin   end;
    end;文件2:File2.pas
    内容:
    unit File2;   //<<<<-----注意这里
    interface
    uses
      uses File1;
    implementation
      //可以使用fun1了
    end;
      

  8.   

    郁闷,搞不定,贴出代码来,大家帮我调调。
    unit Unit1;interfaceuses
      Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
      Dialogs, StdCtrls;  type
      TForm1 = class(TForm)
        Button1: TButton;
        procedure Button1Click(Sender: TObject);
        procedure FormCreate(Sender: TObject);
      private
        { Private declarations }  public
        { Public declarations }
      end;var
      Form1: TForm1;uses
      uses lib;
    implementation{$R *.dfm}procedure TForm1.Button1Click(Sender: TObject);
    begin
    close();
    end;procedure TForm1.FormCreate(Sender: TObject);
    var
      a:string;
      b:TStrings;
      i:integer;
    begin
      a := 'aaa,bbb,ccc,ddd';
      b := Split(a,',');
      for i:=0 to b.Count-1 do
      ShowMessage(b.Strings[i]);end;
    end.
    ----------------------------------------------
    unit lib;interface
      function Split(source,str:string):TStringS;
    implementationfunction Split(source,str:string):TStringS;
    var
      list: TStrings;
    begin
      source := 'aa,bb,ccc,dddddd';
      list := TStringList.Create;
      list.Delimiter := ',';
      list.DelimitedText := source;
      Result := list
    end;
    end.
      

  9.   

    注意:
     关键词Unit 后面的名字必须与存盘文件名一致
     例如
     Unit Common;
     存盘文件必须为Common.pas
     
     然后 Uses Common;就可以了。
      

  10.   

    to:turbozzh(涡轮超人)    我是这样做的啊。Unit lib;的那个文件是lib.pas
    但是运行的时候提示[Error] Unit1.pas(8): Identifier expected but 'USES' found