![](/img/trans.png)
[英]How do I pass a variable between two functions in tkinter python?
[英]How do I pass a variable between functions python
這是我的兩個功能:
def selectBadge(a):
curItem = SelectBadgeView.focus()
inter_var = SelectBadgeView.item(curItem)
ListValues = inter_var['values']
print(ListValues)
SelectedBadge.set("Selected Badge: "+str(ListValues[0]))
SelectedBadgeStr=str(ListValues[0])
return SelectedBadgeStr
def selectScout(a,SelectedBadgeStr):
print(a)
if SelectedPatrol.get()==("Selected Patrol: Please Select A Patrol"):
tk.messagebox.showerror("ERROR","Please select a Patrol")
return
if SelectedBadge.get()==("Selected Badge: Please Select A Badge"):
tk.messagebox.showerror("ERROR", "Please select a Badge")
return
print(SelectedBadgeStr)
return
我想將變量SelectedBadgeStr
從selectBadge()
傳遞給selectScout()
。
變量a
是tkinter樹視圖小部件使用的內部變量。
a = <ButtonRelease event state=Button1 num=1 x=144 y=39>
我努力了:
return SelectedBadgeStr
但是,這沒有用。
該函數的調用者:
SelectScoutView.bind('<ButtonRelease-1>', selectScout)
您是否在定義函數selectBadge(a)
之前將SelectedBadgeStr
聲明為空字符串?
所以就這樣聲明:
SelectedBadgeStr = ''
def selectBadge(a): curItem = SelectBadgeView.focus() . . .
它應該工作。
您還可以使用共享的全局變量:
在函數使用之外聲明變量:
SelectedBadgeStr = None
在函數開始時使用:
global SelectedBadgeStr
每當您現在在函數中使用變量時,就可以訪問全局變量
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.