第二次和第三次點擊按鈕後我想做點什麼等等。如何知道點擊了多少次按鈕?
回答
聲明表單級變量,並在每次單擊該按鈕時遞增它。
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. 瞭解多少次按鈕被點擊
- 3. 我如何知道點擊了多少次?
- 4. 如何知道單擊了UISwitch按鈕
- 5. qt如何知道按鈕被點擊?
- 6. 如何知道何時點擊了UIKeyboard加入按鈕?
- 7. 按鈕點擊多次點擊一次
- 8. 計數一個按鈕被點擊了多少次
- 9. 如何知道在vb.net中點擊了哪個命令按鈕?
- 10. 如何知道哪個活動點擊了按鈕?
- 11. 如何知道winform c#中點擊了哪個按鈕?
- 12. 如何知道我在燒瓶中點擊了哪個按鈕?
- 13. 如何知道點擊了哪個按鈕?
- 14. 如何知道我點擊了哪個表單按鈕類
- 15. 如何知道點擊了哪個按鈕?
- 16. 如何知道點擊了哪個按鈕
- 17. 如何知道誰點擊了Google +1按鈕?
- 18. 使事件的多個按鈕,並知道被點擊了哪個按鈕
- 19. 引導按鈕,如何多次點擊
- 20. 如何知道點擊或不點擊的按鈕
- 21. jQuery單擊按鈕多少次?
- 22. 如何知道用戶對SoundCloud上傳了多少次上傳?
- 23. 軟件如何知道它安裝了多少次?
- 24. Android - 如何知道(編程)電話鈴響了多少次?
- 25. 我如何知道Waypoint一次切換了多少個實例?
- 26. 知道在Android中點擊了哪個按鈕
- 27. 知道誰點擊了Facebook的「贊」按鈕,在您的網站
- 28. 知道是否點擊了Facebook喜歡按鈕
- 29. 知道點擊了checkedtextiew時
- 30. 如何知道我的帖子使用節點js查看了多少次?
您是否嘗試過在表單上聲明屬性? –
no idk如何,我試過'Button2.Tag:= StrToInt(Label1.Text);'但無用@ IgnacioVazquez-Abrams – ColdZer0
如果您必須濫用'Tag'屬性來跟蹤點擊次數'Button2.Tag:= Button2.Tag + 1'會做的伎倆。 – Johan