我正在嘗試為“投票應用程式”構建這個簡單的 GUI,通過單擊帶有候選人 ID 的按鈕, 1 將添加到字典中 ID 鍵的值中。(基本按點擊計票)
from kivy.app import App
from kivy.uix.boxlayout import BoxLayout
from kivy.uix.button import Button
CANDIDATES = {"T1031" : 0,"T2112" : 0, "T4561" : 0}
class MyLayout(BoxLayout):
orientation = "Vertical"
def __init__(self, **kwargs):
super(MyLayout, self).__init__(**kwargs)
for i in CANDIDATES:
canditate = Button(text=i, on_press=self.button_clicked)
self.add_widget(canditate)
def button_clicked(self, obj):
print("button pressed", obj)
class MyApp(App):
def build(self):
return MyLayout()
if __name__ == "__main__":
MyApp().run()
那么如何獲取按鈕上顯示的文本呢?(另外,如果你們中有人知道......我如何在按鈕上放置 ID?我嘗試撰寫“id = i”但當我這樣做時 GUI 甚至沒有啟動)
提前謝謝了!
uj5u.com熱心網友回復:
您可以使用以下Button.text屬性從按鈕訪問文本值:
def button_clicked(self, obj):
# Note that obj here is a button object
# You can access it's text value, for example, using obj.text
CANDIDATES[obj.text] = 1
print(f"{obj.text}'s current vote count is now {CANDIDATES[obj.text]}")
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/364703.html
標籤:Python 蟒蛇-3.x 用户界面 基维 kivy 语言
下一篇:如何洗掉不知道列名稱的列?
