首頁 >後端開發 >Python教學 >為什麼我的 Tkinter 小工具儲存為 None?

為什麼我的 Tkinter 小工具儲存為 None?

Patricia Arquette
Patricia Arquette原創
2024-10-26 03:20:27257瀏覽

 Why are my Tkinter Widgets Stored as None?

為什麼我的Tkinter 小部件儲存為None

在這種情況下,您遇到了Tkinter 小部件儲存為None 的問題在一個數組中。當您呼叫小部件時,它們不可用。

了解問題

Tkinter grid、pack 和 place 方法是就地操作,並且總是傳回 None。因此,嘗試在創建小部件的同一行呼叫這些方法將導致 None 被指派給小部件變數。

解決方案

要解決此問題,請拆分小部件創建和方法調用分為單獨的行:

<code class="python"># Create the widget
button = Button(...)

# Call the grid method
button.grid(...)

# Pack method
button.pack(...)

# Place method
button.place(...)</code>

應用到您的程式碼

在您的程式碼中,修改小部件建立和方法調用,如下所示:

<code class="python">b[c + (r * 10)] = Button(f, text=chr(97 + c + (r * 10)), command=lambda a=c + (r * 10): color(a), borderwidth=1, width=5, bg="white")
b[c + (r * 10)].grid(row=r, column=c)</code>

現在,當您與GUI 交互時,您的小部件將可以存取並正確回應。

以上是為什麼我的 Tkinter 小工具儲存為 None?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn