Loops Delphi:如何制作鼠标点击计数器?

Loops Delphi:如何制作鼠标点击计数器?,loops,delphi,counter,Loops,Delphi,Counter,我试图制作一个计数器,根据鼠标点击编辑按钮的标题。我知道问题是什么,但不知道如何解决 代码: 每当我右键单击时,计数器将再次设置为0+1,当我左键单击时,计数器将设置为0。我怎样才能解决这个问题 感谢您将计数器声明为局部变量,每次调用事件处理程序时,它都会重新初始化为零 您需要将其改为表单级成员变量,在调用之间保留其值 type TForm1 = class(TForm) ... private icount: Integer; end; procedure TFo

我试图制作一个计数器,根据鼠标点击编辑按钮的标题。我知道问题是什么,但不知道如何解决

代码:

每当我右键单击时,计数器将再次设置为0+1,当我左键单击时,计数器将设置为0。我怎样才能解决这个问题


感谢您将计数器声明为局部变量,每次调用事件处理程序时,它都会重新初始化为零

您需要将其改为表单级成员变量,在调用之间保留其值

type
  TForm1 = class(TForm)
    ...
  private
    icount: Integer;
  end;

procedure TForm1.Shape9MouseUp(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
  if button = mbRight then
    icount := icount + 1;

    button2.caption := 'Count: ' + IntToStr(icount);  
end;

您已经将计数器声明为局部变量,每次调用事件处理程序时都会将其重新初始化为零

您需要将其改为表单级成员变量,在调用之间保留其值

type
  TForm1 = class(TForm)
    ...
  private
    icount: Integer;
  end;

procedure TForm1.Shape9MouseUp(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
  if button = mbRight then
    icount := icount + 1;

    button2.caption := 'Count: ' + IntToStr(icount);  
end;

计数器的作用域必须是全局的。将其声明为TForm1的私有成员。您的意思是它必须是堆栈上的本地临时变量以外的其他变量。该开发人员最好了解局部变量是什么。此外,如果他们想增加价值,最好不要反复将其归零。还要学习如何一步一步地进入你的代码,你将看到这是如何工作的。祝你好运,柜台必须是全球性的。将其声明为TForm1的私有成员。您的意思是它必须是堆栈上的本地临时变量以外的其他变量。该开发人员最好了解局部变量是什么。此外,如果他们想增加价值,最好不要反复将其归零。还要学习如何一步一步地进入你的代码,你将看到这是如何工作的。祝你学习巴利兹语好运,谢谢,这正是我想要的@你知道如何表达你对正确答案的欣赏,是吗?点击左边的复选标记。谢谢,正是我想要的@你知道如何表达你对正确答案的欣赏,是吗?单击左侧的复选标记。
procedure TForm1.Shape9MouseUp(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin

if button = mbRight then
button2.Tag := button2.Tag+ 1;

button2.caption := 'Count: ' + IntToStr(button2.Tag);  

end;