当前位置 : 主页 > 编程语言 > delphi >

Delphi如何确定哪个程序调用另一个程序?

来源:互联网 收集:自由互联 发布时间:2021-06-23
我怎样才能确定谁叫​​了Showme程序? procedure Showme(str:string);begin ShowMessage(str);end;procedure btnclick(sender:TObject);begin Showme("test");end;procedure btn2click(sender:TObject);begin Showme("test");end; 编辑:困
我怎样才能确定谁叫​​了Showme程序?

procedure Showme(str:string);
begin
  ShowMessage(str);
end;

procedure btnclick(sender:TObject);
begin
  Showme("test");
end;

procedure btn2click(sender:TObject);
begin
  Showme("test");
end;

编辑:困惑

Showme(654, '654'); // procedure name, string
Showme(654, '564');
一个过程没有内置的方法来知道哪个过程调用它.如果您真的需要知道,可以使用堆栈跟踪,但实际上只需要调试那种数据.对于实际执行,重要的是传递给例程的数据,而不是传递给它的地方.这是结构化编程的基本原则之一.如果两个不同的例程使用相同的数据调用相同的过程,则应将它们视为相同.

你究竟在做什么,你需要能够分辨出什么?可能有一种更简单的方法来实现它.

网友评论