[英]Tkinter Canvas bind '<Configure>' event to item
我錯過了什么嗎? 我想我已經做了類似下面例子的事情。 但是我既沒有找到我希望的腳本,也沒有在網上找到一些東西。 基本上我想將Configure事件綁定到一個項目。 是不是可能像錯誤提示的那樣?
import tkinter as tk
def do_something(event=None):
print('something')
def stupid_workaround():
if cnvs.coords(lbl) != lbl_coords:
do_something()
cnvs.coords(lbl, *lbl_coords)
cnvs.after(200,stupid_workaround)
root = tk.Tk()
cnvs = tk. Canvas(root,highlightthickness=0)
lbl = cnvs.create_text(0,0, text='this is an exampel', anchor='nw')
lbl_coords = cnvs.coords(lbl)
btn = tk.Button(root, text='change coords', command=lambda:cnvs.coords(lbl,10,10))
btn.pack()
stupid_workaround()
#cnvs.bind(lbl, '<Configure>', do_something) #throws no error
#cnvs.tag_bind(lbl, '<Configure>', do_something) #throws error
cnvs.pack()
root.mainloop()
_tkinter.TclError:請求的非法事件; 只能使用鍵、按鈕、動作、進入、離開和虛擬事件
就像錯誤說的那樣,你不能綁定到<Configure>
事件,它根本不是一個選項。 該事件僅對小部件有效,而不是在 canvas 上繪制的項目。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.