第二次和第三次点击按钮后我想做点什么等等。如何知道点击了多少次按钮?
回答
声明表单级变量,并在每次单击该按钮时递增它。
type
TForm1 = class(TForm)
// component/control variables
private
FClickCount: Integer;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
FClickCount := FClickCount + 1; // or Inc(FClickCount);
end;
我知道你已经接受了答案,但是,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)像这样的类型常量的使用已被弃用多年(尽管它们对于像这样的东西很有用 - 保持声明和使用“变量”彼此靠近对我来说是件好事书和使用表单级别变量这似乎是错误的,因为它破坏封装)。
呃。可写常量是丑陋的。当你写'const'时,它应该表示* const *,而不是*使用被声明为常量的值作为变量而不是*。可写常量与goto属于同一个类别。 *弃用多年*意味着*不告诉人们他们可以使用它们*,尤其是*不会教新开发人员使用不推荐的方式开始使用*。 –
美丽(丑陋)在旁观者的眼中。我认为在这种情况下的表单变量是丑陋的。为此使用标签属性可能是一个很好的折衷方案,但在另一评论中被称为“滥用”。我的优先顺序是使用类型化常量,然后使用标签属性,然后使用表单变量。随着封装的想法高举。 –
不可以。*不论用户看到它,被弃用的功能*被添加到新代码中都是丑陋的。这相当于告诉某人使用BDE和Paradox启动一个新的数据库应用程序。如果你坚持可笑的不必要的范围缩减,比你更好的解决方案是将按钮点击事件移到单元末尾,并在程序上方声明一个全局计数器;它也缩小了范围,因为它只是从它的声明开始才可见,它允许初始化,并且不会通过*写入常量*来混淆代码。 –
- 1. 如何知道按钮被点击了多少次?
- 2. 如何知道何时点击了UIKeyboard加入按钮?
- 3. 计数一个按钮被点击了多少次
- 4. 如何知道点击了哪个按钮
- 5. 如何知道winform c#中点击了哪个按钮?
- 6. 如何知道点击了哪个按钮?
- 7. 使事件的多个按钮,并知道被点击了哪个按钮
- 8. 引导按钮,如何多次点击
- 9. 知道谁点击了Facebook的“赞”按钮,在您的网站
- 10. 知道在Android中点击了哪个按钮
- 11. 软件如何知道它安装了多少次?
- 12. Android - 如何知道(编程)电话铃响了多少次?
- 13. 我如何知道Waypoint一次切换了多少个实例?
- 14. 如何知道我的帖子使用节点js查看了多少次?
- 15. 如何知道在整个站点中使用了多少次CSS选择器?
- 16. 如何知道在ListView中单击了哪个按钮
- 17. 如何知道Flex DataGrid itemRenderer中的按钮何时被点击?
- 18. 如何知道在列表上下文中点击了哪个jQuery按钮
- 19. Android:如何知道在“onActivityResult”方法中点击了哪个按钮
- 20. 如何知道按钮在form1中被点击但是在form2中知道C#
- 21. Android的 - 按钮侦听知道哪个按钮被点击
- 22. 如何知道谁点击我网站上的Facebook“赞”按钮?
- 23. iOS如何知道html5按钮是否被点击加载UIWebView
- 24. 我如何知道UItableview中单元格按钮的点击
- 25. 在WebView中,如何知道哪个按钮被点击?
- 26. ASP.NET MVC按钮多次点击
- 27. PyQt4按钮点击注册多次
- 28. 避免多次点击一个按钮
- 29. 按钮点击点击事件两次
- 30. 再次点击按钮点击
您是否尝试过在表单上声明属性? –
no idk如何,我试过'Button2.Tag:= StrToInt(Label1.Text);'但无用@ IgnacioVazquez-Abrams – ColdZer0
如果您必须滥用'Tag'属性来跟踪点击次数'Button2.Tag:= Button2.Tag + 1'会做的伎俩。 – Johan