如何把过程名作为一个参数传递给另外的过程? (100分)

L

ljlboy

Unregistered / Unconfirmed
GUEST, unregistred user!
代码:
我想要完成如下的功能:
写一全个过程
doprocedure(procedurename:string)
该过程能执行procedurename所指的过程。
不知该如何去写。
 
Type TPro=Procedure;
procedure do
abc;
begin
ShowMessage('Do Abc');
end;
procedure Test(Pro:TPro);
begin
Pro;
end;
Test(DoAbc);
 
使用過程指針吧
 
procedure do
abc;
begin
ShowMessage('Do Abc');
end;

procedure Test(Pro:pointer);
var
a: TNotifyEvent;
begin
TMethod(a).Code := Pro;
a(nil);
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
Test(@DoAbc);
end;
 
多人接受答案了。
 
顶部