我一直試圖讓一個鼠標移動事件來改變Tkinter中的一個butten widget的背景顏色。我在網上獲得了一些簡單的代碼,它可以用於文本,但是顏色失敗。這裏是:奇怪的Tkinter鼠標移動行爲
from Tkinter import *
root - Tk()
b = Button(root, text='foo')
b.pack()
def enterB(event):
b.configure(text='bar', background='red')
def leaveB(event):
b.configure(text='foo')
b.bind('<Enter>', enterB)
b.bind('<Leave>', leaveB)
root.mainloop()
當我把鼠標放在按鈕上時,文本變爲「條」,但背景顏色保持灰色。當我的鼠標離開按鈕上的區域時,背景顏色變爲紅色,文本變爲「foo」。這與應該發生的情況相反。
如果我在leaveB函數的b.configure語句中放置background ='blue',並使其餘部分保持不變,則該按鈕將使該按鈕保持藍色,並且它永遠不會變爲紅色。
誰能告訴我發生了什麼事?
謝謝。
好問題。我不想冒犯你,但你應該想,如果你真的想學習一個僅僅是傳統的UI工具包(來源:http://wiki.python.org/moin/TkInter,也許你可以找到還有一些有用的資源)。 – phineas
對不起,但我不確定我是否得到你。你是說沒有理由將Tkinter用於Python歷史的一次美好旅程之外?這沒有用?感謝您的鏈接。我經常使用該頁面。 – bev
*在我看來* Tkinter有點過時,只能一眼就看到(就像你已經過期)一樣容易編程,最後但並非最不重要的是它看起來不太好。有像''wxPython'](http://wxpython.org/),['PyQt'](http://wiki.python.org/moin/PyQt)和['PyGTK'](https:/ /python-gtk-3-tutorial.readthedocs.org/en/latest/index.html),它們有最新的開發,錯誤修復,文檔,本地外觀和感覺,並且功能更強大。我推薦'wxPython'。這些UI工具包的唯一缺點是它們沒有與Python解釋器一起分發,所以您必須手動安裝它們。 – phineas