delphi中消息的使用 ( 积分: 100 )

  • 主题发起人 主题发起人 tiger0062
  • 开始时间 开始时间
T

tiger0062

Unregistered / Unconfirmed
GUEST, unregistred user!
我在单元unit1 中定义消息
const
FORM_CREATE = WM_USER +100;
现在unit2中定义
procedure FormCreate (var MSG: TMessage); message FORM_CREATE;
并且引用了 unit1 但在使用时总是提示我
Undeclared identifier: 'FORM_CREATE'
希望高手指点
 
我在单元unit1 中定义消息
const
FORM_CREATE = WM_USER +100;
现在unit2中定义
procedure FormCreate (var MSG: TMessage); message FORM_CREATE;
并且引用了 unit1 但在使用时总是提示我
Undeclared identifier: 'FORM_CREATE'
希望高手指点
 
unit1要放在最上边的interface区uses
 
你在type前边的uses 引用unit1
而不是 implementation后面的uses里
 
我是把他放在最上面的type 前面的 uses里面 大师门
 
函数体没实现?
 
我试一下,可以。如下:
unit Unit1;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs;

const
FORM_CREATE = WM_USER +100;

type
TForm1 = class(TForm)
private
{ Private declarations }
public
{ Public declarations }
end;

var
Form1: TForm1;

implementation

{$R *.dfm}

end.

*********************
unit Unit2;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, Unit1;

type
TForm2 = class(TForm)
private
{ Private declarations }
public
{ Public declarations }
procedure FormCreate (var MSG: TMessage); message FORM_CREATE;
end;

var
Form2: TForm2;

implementation

{$R *.dfm}

{ TForm2 }

procedure TForm2.FormCreate(var MSG: TMessage);
begin
ShowMessage('aa');
end;

end.

消息没有调用,但是编译的时候没有问题。
 
好的谢谢了!
 
多人接受答案了。
 
后退
顶部