我有一個簡單的 tkinter 應用程式。我想創建一個允許用戶插入其組的彈出視窗。寫入并按下回車按鈕后,該值被驗證,如果可以接受,那么我想保存它。的值group是在save_and_kil按下按鈕時“呼叫”的函式中獲取的。我正在指定要在按鈕引數中呼叫的命令,那么如何保存組的值以便我可以訪問它other_function?
import tkinter as tk
class SomeClass:
def __init__(self, root):
self.root = root
self.root.title("App")
self.root.geometry("600x450")
self.groups = ["1", "2", "3", "4", "5"]
self.top_window()
self.group = "nothing"
def top_window(self):
a = tk.Toplevel()
a.geometry('400x150')
a.title('Credentials Window')
def save_and_kil():
group = txt_entry.get()
if group in self.groups:
a.destroy()
txt_label = tk.Label(a, text="please write your group")
txt_entry = tk.Entry(a)
enter_but = tk.Button(a,
text='Enter',
command=save_and_kil)
txt_label.grid(column=0, row=0)
txt_entry.grid(column=1, row=0)
enter_but.grid(column=1, row=1)
# somehow make redefine the value of self.group
def other_function(self):
print(self.group)
pass
roott = tk.Tk()
app = SomeClass(roott)
roott.mainloop()
uj5u.com熱心網友回復:
save_and_kill關閉self,所以你可以self.group在函式內部設定。
def save_and_kil():
self.group = txt_entry.get()
if self.group in self.groups:
a.destroy()
uj5u.com熱心網友回復:
編輯 添加示例代碼:
import tkinter as tk
class SomeClass:
def __init__(self, root):
self.root = root
self.root.title("App")
self.root.geometry("600x450")
self.groups = ["1", "2", "3", "4", "5"]
self.top_window()
self.group = "nothing"
def save_and_kil(self):
self.group = self.txt_entry.get()
if self.group in self.groups:
self.a.destroy()
self.other_function()
def other_function(self):
print(f'self.group: {self.group}')
pass
def top_window(self):
self.a = tk.Toplevel()
self.a.geometry('400x150')
self.a.title('Credentials Window')
self.txt_label = tk.Label(self.a, text="please write your group")
self.txt_entry = tk.Entry(self.a)
self.enter_but = tk.Button(self.a,
text='Enter',
command=self.save_and_kil)
self.txt_label.grid(column=0, row=0)
self.txt_entry.grid(column=1, row=0)
self.enter_but.grid(column=1, row=1)
# somehow make redefine the value of self.group
roott = tk.Tk()
app = SomeClass(roott)
roott.mainloop()
您可以將條目直接設定為self.group或有一個self.temp_group您將保存save_and_kil并稍后在other_function
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/462503.html
