我遇到的问题是,使用customtkinter事件似乎无法在定制的框架中工作。
这可以用(不起作用)重新制作:
from customtkinter import CTk, CTkFrame
root = CTk()
root.geometry('300x300')
frame = CTkFrame(root)
frame.bind('<ButtonPress-1>', lambda _ : print('clicked'))
frame.place(x=100, y=100, width=50, height=50)
root.mainloop()但是这个事件起作用了
from customtkinter import CTk, CTkFrame
root = CTk()
root.geometry('300x300')
frame = CTkFrame(root)
frame.bind('<Enter>', lambda _ : print('entered'))
frame.place(x=100, y=100, width=50, height=50)
root.mainloop()发布于 2022-10-22 13:11:06
ctk只是用画布覆盖你的画框来画圆角。开发人员似乎没有注意事件的处理。为了解决你的问题,你可以:
frame.canvas.bind('<ButtonPress-1>', lambda _ : print('clicked'))
发布于 2022-10-24 10:19:03
事件绑定将添加到下一个CustomTkinter版本5.0.0中。目前,它们总是在底层的tkinter.Frame对象上被调用,这个对象总是被画布覆盖。因此,单击事件目前将无法工作。
https://stackoverflow.com/questions/74163391
复制相似问题