如何知道点击按钮的次数?

时间:2016-06-08 23:50:02

标签: delphi button

我希望在第二次和第三次点击按钮后执行某些操作,依此类推。

2 个答案:

答案 0 :(得分:7)

声明一个表单级变量,并在每次单击该按钮时递增它。

type
  TForm1 = class(TForm)
    // component/control variables
  private
    FClickCount: Integer;
  end;

procedure TForm1.Button1Click(Sender: TObject);
begin
  FClickCount := FClickCount + 1;  // or Inc(FClickCount);
end;

答案 1 :(得分:-1)

我知道你已经接受了答案,但是,FWIW,我就是这样做的。

如果单击按钮计数不需要在OnClick()处理程序之外使用,则可以使用类似的常量将计数器保持在处理程序的本地:

procedure TForm1.Button1.click(Sender: TObject);
{$J+}
const
  counter: integer = 0;
{$J-}
begin
  inc(counter);

  if (counter < 2) then exit;
end;

注意:

1){$ J +}允许分配类型常量。

2)像这样的类型常量的使用已被弃用多年(尽管它们对于这样的东西很有用 - 保持声明和使用“变量”彼此接近在我的书中是一件好事并且使用表单级变量似乎是错误的,因为它破坏了封装)。