[Delphi]过程Procedure动态调用
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了[Delphi]过程Procedure动态调用相关的知识,希望对你有一定的参考价值。
过程也可以像通用变量一样声明、调用
procedure HelloWorld;
begin
ShowMessage(‘HI‘);
end;
procedure HelloWorld2(a:String);
begin
ShowMessage(‘HI‘);
end;
procedure TFormSplash.FormCreate(Sender: TObject);
var
myproc:Procedure;
myproc2:Procedure(a:String);
begin
myProc:=HelloWorld;
if Assigned(myProc) then myProc;
myproc2:= HelloWorld2;
if Assigned(myproc2) then myproc2(‘‘);
也可以这样定义
var
myproc:Procedure=HelloWorld;
myproc2:Procedure(a:String)=HelloWorld2;
参数类型不同或顺序不同会提示
E2009 Incompatible types: ‘Parameter lists differ’
直接赋值 对象中的过程或函数将出错
E2009 Incompatible types: ‘regular procedure and method pointer’
需要在Type里声明类型
type
TMethod =
procedure
of
object
;
TFunc =
function
:
integer
of
object
;
TNotifyEvent =
procedure
(Sender: TObject)
of
object
;
以上是关于[Delphi]过程Procedure动态调用的主要内容,如果未能解决你的问题,请参考以下文章
delphi怎样在一个procedure中调用另一个procedure?
delphi怎样在一个procedure中调用另一个procedure?
delphi输代码出现Overloaded procedure 'Edit Change' must be marked with the 'overload' dir