gpt4 book ai didi

delphi - delphi中如何确定哪个事件调用过程

转载 作者:行者123 更新时间:2023-12-03 14:57:53 25 4
gpt4 key购买 nike

我在delphi中有一个名为XYZ(sender:TObject)的过程。我的表格上有一个按钮。

Button.onclick:= xyz;
Button.OnExit:= xyz;

这两个事件都调用相同的过程。我想在过程 XYZ 中确定哪个事件调用此事件(onclick 或 onexit),并根据该事件继续编码。如何确定哪个事件被触发?谢谢

最佳答案

您无法通过公平手段获得该信息。解决方案是使用两个单独的顶级事件处理程序,这两个处理程序又可以调用另一个方法,传递一个参数来标识正在处理的事件。

type
TButtonEventType = (beOnClick, beOnExit);

procedure TMyForm.ButtonClick(Sender: TObject);
begin
HandleButtenEvent(beOnClick);
end;

procedure TMyForm.ButtonExit(Sender: TObject);
begin
HandleButtenEvent(beOnExit);
end;

procedure TMyForm.HandleButtonEvent(EventType: TButtonEventType);
begin
//use EventType to decide how to handle this
end;

关于delphi - delphi中如何确定哪个事件调用过程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8786179/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com