我是个新手哈,在看delphi7完美经典,不知道为什么照着书上的代码写的却运行不了。
就是用Unit1调用Unit2里面的procedure,一直提示我ShowMessage是一个未说明的标识符。代码如下:Unit1的代码:unit Unit1;interfaceuses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, Unit2;type
  TForm1 = class(TForm)
    Button1: TButton;
    procedure Button1Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;var
  Form1: TForm1;implementation{$R *.dfm}procedure TForm1.Button1Click(Sender: TObject);
begin
Unit2.MyPro;
end;end.
Unit2的代码:unit Unit2;interfaceprocedure MyPro;implementationprocedure MyPro;
var
  MyName:String;
begin
  MyName:= '喂~我是林小拉!';
  ShowMessage (MyName);
end;end.
请各位高手朋友帮帮忙哈,不胜感激。谢谢~~!!

解决方案 »

  1.   

    procedure TForm1.Button1Click(Sender: TObject);
    begin
    MyPro; //不能加Unit2
    end;
      

  2.   


    你说的是这个吗?
    uses
      Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
      Dialogs, StdCtrls, Unit2;这段 我在unit2加上后提示出错的位置就是uses这里了
      

  3.   

    不是.你的unit2单元没用引用那个方法的单元,在interface前面加 uses messages单元试试
      

  4.   

    Unit2 单元什么都没有引用。ShopwMessage 在 Dialogs 单元
      

  5.   

    啊..楼上的..原来是Dialogs 单元啊..我一直以为是messages单元
      

  6.   

    procedure TForm1.Button1Click(Sender: TObject);
    begin
    MyPro; //不能加Unit2
    end;还有Unit2中,没有引用包含有“ShowMessage”函数的单元,可能是Windows, Messages, SysUtils中的一个。
      

  7.   

    在unit2的接口需  uses   dialogs;
      

  8.   

    unit Unit1;interfaceuses
      Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
      Dialogs, StdCtrls,Unit2;type
      TForm1 = class(TForm)
        Button1: TButton;
        procedure Button1Click(Sender: TObject);
      private
        { Private declarations }
      public
        { Public declarations }
      end;var
      Form1: TForm1;implementation{$R *.dfm}procedure TForm1.Button1Click(Sender: TObject);
    begin
      MyPro;
    end;end.//单元二代码。unit Unit2;interface
    uses Dialogs;procedure MyPro;implementationprocedure MyPro;
    var
      MyName :string;
    begin
      MyName := '喂~我是林小拉!';
      Showmessage(MyName);
    end;end.
    //以上代码通过。
      

  9.   

    unit Unit2;interfaceuses Dialogs;
    procedure MyPro;implementationprocedure MyPro;
    var
      MyName:String;
    begin
      MyName:= '喂~我是林小拉!';
      ShowMessage (MyName);
    end;end.
      

  10.   

    unit Unit2;interfaceuses Dialogs;procedure MyPro;implementationprocedure MyPro;
    var
      MyName:String;
    begin
      MyName:= '喂~我是林小拉!';
      ShowMessage (MyName);
    end;end.
      

  11.   

    我把这个uses Dialogs;
    放在implementation下面也成功了,感觉好奇怪啊,感谢大家的帮忙,我新人,分数不多,我去看看怎么给分哈