[英]Change Cursor when Hovering Over Part of Frame TKinter
将鼠标悬停在框架的特定部分上时,如何更改光标? 我正在尝试制作一个背景图像,当有人将鼠标悬停在某个特定部分上时,如果单击该部分,将更改框架,光标将更改为信号,表示单击它们就会发生交互。
class Map(Frame):
def __init__(self, master, controller, *args, **kwargs):
Frame.__init__(self, master)
self.controller = controller
#keep player data stored at all times
self.player = Player.Player()
# define map gui here
#repack this frame so binding included
self.map_picture = PhotoImage(file=r"images/rsz_archipelago.gif")
self.image = Label(self, image=self.map_picture)
self.image.bind("<Button-1>", self.check_for_spot)
self.image.grid(row=0, column=0, columnspan=40, rowspan=40)
self.places = {MapRectange(420,490,175, 205):Hydra_Level}
def check_for_spot(self, event):
x1, y1 = event.x, event.y
pt = Point(x1,y1)
print("X: " + str(x1) + " Y: " + str(y1))
for place, level in self.places.iteritems():
if place.point_is_in(pt):
self.controller.show(level, self)
break
获取光标坐标:
import Tkinter as tk
from Tkinter import Frame
root = tk.Tk()
frame1 = Frame(root, bg='blue',width='100px', height='100px')
frame1.pack()
def motion(event):
x, y = event.x, event.y
print('{}, {}'.format(x, y))
frame1.bind('<Motion>', motion)
root.mainloop()
您将在控制台中看到移动光标时的坐标,然后可以定义范围并根据光标或图像进行更改...请参考http://effbot.org/tkinterbook/,此处提供了出色的文档在python Tkinter上。
使用光标 attrubute像这样:
YourFrame.cursor = pencil
请参阅: http : //infohost.nmt.edu/tcc/help/pubs/tkinter/web/cursors.html http://infohost.nmt.edu/tcc/help/pubs/tkinter/web/frame.html
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.