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