当以编程方式设置TSwitch的IsChecked属性时,将调用事件OnSwitch。如何避免这种情况?我希望OnSwitch事件仅在用户交互的情况下调用,当用户通过单击切换控件时。
发布于 2017-01-19 19:06:07
使用OnSwitch = Switch1Switch()和下面的按钮OnClick来模拟编程更改,您可以执行以下操作:
procedure TForm29.Button1Click(Sender: TObject);
begin
Switch1.OnSwitch := nil;
Switch1.IsChecked := not Switch1.IsChecked;
Switch1.OnSwitch := Switch1Switch;
end;这会更改开关的状态,并在用户翻转开关时触发OnSwitch,但不会在以编程方式更改状态时触发。
https://stackoverflow.com/questions/41738982
复制相似问题