OnClick事件触发组件的速度

时间:2009-11-10 00:28:46

标签: delphi events components onclick delphi-7

我在一个功能为Plus和Minus的表单上使用了两个TButton组件。单击时,它们将在整数上加或减,然后将显示在TLabel上。

这可以根据需要运行,我点击的速度会触发OnClick事件而不会出现故障。

我已经用PNGButton组件替换了按钮,这样我就可以让它们看起来更漂亮。除了每次单击组件时OnClick事件似乎都没有触发时,一切仍然像以前一样工作。我用一个简单的TImage组件测试了它,结果是一样的。

如果我非常慢地点击 ,它每次都会点亮,但如果我按常规点击它,它似乎只会在每次点击时触发。

我可以做些什么来确保每次都触发OnClick事件?

1 个答案:

答案 0 :(得分:1)

使用OnMouseUp事件:

,而不是使用OnClick事件
procedure TForm.btnMinusMouseUp(Sender: TObject;
  Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
begin
  if Self.NumSelected > 0 then begin
    Self.NumSelected := Self.NumSelected - 1;
    Self.UpdateLabel;
  end;
end;