首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > .NET >

小弟我想用变量名去调用过程名,不知道如何写代码

2013-12-28 
我想用变量名去调用过程名,不知道怎么写代码我有个过程procedure Tzmenu_w.zmenu_cxm_progbeginif a1cg

我想用变量名去调用过程名,不知道怎么写代码
我有个过程

procedure Tzmenu_w.zmenu_cxm_prog;
begin
if a1='cggl' then
   P1  else
if a1='xsgl' then
   P2  else
if a1='kcgl' then
   P3  else
...............

end;
说明:p1,p2,p3....都是过程名,也许以上的过程有几百行代码,我想用一个选择判断语句搞定
那么这样就需要用变量名代替过程名
procedure Tzmenu_w.zmenu_cxm_prog;
begin
if 条件 成立 就执行 某变量(其实这变量与某过程关联)



[解决办法]

procedure TForm1.proc;
begin
  showmessage('abc')
end;

procedure TForm1.Button1Click(Sender: TObject);
var
  p1: procedure of object;
begin
  p1 := proc;
  p1;
end;

[解决办法]
type 
  TStrProc=Procedure(const S :string);

var 
  MyStrProc :TStrProc;
//假如有一个过程 Procedure Test(const S:string);
//另一个过程Procedure Test2(const S:string);
  MyStrProc := Test; //
  MyStrProc(S); //执行Test;
  MyStrProc := Test2;
  MyStrProc(S);//执行Test2;

热点排行