亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

使用類外部的函數引用我的 tkinter 標簽對象

使用類外部的函數引用我的 tkinter 標簽對象

狐的傳說 2023-10-11 22:55:03
我想更改其中一個標簽上的配置,但無法弄清楚如何在類外部的函數中引用它。我的目標是創建一個函數,將其放置在循環中以檢查“my_turn”的值。根據“my_turn”的值,我想更改“TeamFrame”類中“self.turn”標簽的配置,但是我不知道如何在類之外引用它。class LoginScreen(tk.Canvas):    def __init__(self, parent):        tk.Canvas.__init__(self, parent)        self.parent = parent        self.create_image(0, 0, image=my_img, anchor="nw")        self.button = tk.Button(self.frame, text="Connect", bg='burlywood3', activebackground='burlywood3', font="12",                                command=lambda: login())        self.button.grid(row=4, columnspan=3, pady=10)        def login():            my_name = self.entry.get()            msg = str(my_name)            client.send(msg.encode(FORMAT))            self.destroy()            root.title(f"Main Application - {my_name}")            draft = MainApplication(root, my_name)            draft.pack(side="top", fill="both", expand=True)            threading.Thread(target=start_app).start()class MainApplication(tk.Canvas):    def __init__(self, parent, name):        tk.Canvas.__init__(self, parent)        self.parent = parent        self.create_image(0, 0, image=my_img, anchor="nw")        self.team = TeamFrame(self, 1, 4, name)class TeamFrame(tk.Frame):    def __init__(self, parent, r, c, name):        tk.Frame.__init__(self, parent)        self.parent = parent        self.configure(bd=1, relief="ridge", bg='wheat3')        self.grid(row=r, rowspan=2, column=c, padx=10, pady=15, sticky=tk.NE)        self.turn = tk.Label(self, bg='wheat3', text=f"You are not on the clock.\n                      ",                             fg='gray28', font='bold 12', disabledforeground='red3')        self.turn.pack(pady=10)
查看完整描述

1 回答

?
四季花海

TA貢獻1811條經驗 獲得超5個贊

MainApplication您可以將, draft,的實例傳遞給start_app():


threading.Thread(target=start_app, args=(draft,)).start()

main_app.team.turn然后您可以通過(main_app是 的新參數的名稱)訪問所需的標簽,start_app()如下所示:


def start_app(main_app):

    # do something

    main_app.team.turn['text'] = 'Hello'

    # do other stuff


查看完整回答
反對 回復 2023-10-11
  • 1 回答
  • 0 關注
  • 105 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號