gpt4 book ai didi

delphi - 如何根据触发事件处理程序的 TAction 来更改其行为?

转载 作者:行者123 更新时间:2023-12-03 15:24:18 30 4
gpt4 key购买 nike

我有一些菜单项,其操作如下:

procedure TMISMainFrm.ActiSalesInvoiceExecute(Sender: TObject);
begin
if CheckMdiList('Sales Invoice') then
BEGIN
SalesInvFrm := tSalesInvFrm.Create(Self,0,UserIdNo,1,1);
SalesInvFrm.Show;
END;
end;

可以从多个位置调用上述操作,但第二个参数(0)可能会改变。如何传递所需的参数,这样我就不必重新编码例程?

最佳答案

一种常用的简单方法是设置 Tag Action 的属性。显然,每个 Action 都应该不同。然后你像这样改变你的执行处理程序:

procedure TMISMainFrm.ActiSalesInvoiceExecute(Sender: TObject);
begin
if CheckMdiList('Sales Invoice') then
BEGIN
SalesInvFrm := tSalesInvFrm.Create(Self,(Sender as TAction).Tag,UserIdNo,1,1);
SalesInvFrm.Show;
END;
end;

关于delphi - 如何根据触发事件处理程序的 TAction 来更改其行为?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7431114/

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