假设我们有类似的东西
Private Sub ClickObject(ByVal sender As System.Object, ByVal e as System.Eventargs)
Handles Object1.click, Object2.click, Object3.click
它在“句柄”之后获取事件并将它们发送到函数。
在 Delphi 中是否有类似的方法,我该怎么做?
假设我们有类似的东西
Private Sub ClickObject(ByVal sender As System.Object, ByVal e as System.Eventargs)
Handles Object1.click, Object2.click, Object3.click
它在“句柄”之后获取事件并将它们发送到函数。
在 Delphi 中是否有类似的方法,我该怎么做?
TActionList
在您的表单中添加一个。TAction
向它添加 a并像处理其他控件OnExecute
的事件一样处理它的事件。OnClick
分配Action
控件的属性以引用您添加到操作列表中的操作。(这也会导致控件从关联的操作中获取它们的标题以及启用和可见的属性。它的目的是使菜单和工具栏按钮在表示相同命令时更容易具有统一的状态。)
是的。
您可以创建一个事件处理程序并将其分配给多个控件。
procedure TForm1.ThreeControlsClick(Sender: TObject);
begin
if Sender = Button1 then
HandleButton1Click
else if Sender = ComboBox1 then
HandleComboBox1Click
else if Sender = Edit1 then
HandleEdit1Click;
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
Button1.OnClick := ThreeControlClick;
ComboBox1.OnClick := ThreeControlClick;
Edit1.OnClick := ThreeControlClick;
end;