如何使用Python访问turtle程序背后的tkinter窗口?
获取turtle底层Tkinter窗口及隐藏光标的实现方法
turtle的渲染画布默认挂载在自动创建的Tkinter顶层窗口上,你可以通过以下步骤访问该窗口实例,实现全turtle窗口范围内的光标隐藏:
- 初始化turtle屏幕对象:
screen = turtle.Screen() - 调用屏幕对象的
getcanvas()方法获取Tkinter画布实例,再调用winfo_toplevel()方法即可得到画布所属的顶层Tk窗口:tk_window = screen.getcanvas().winfo_toplevel() - 对获取到的Tk窗口配置光标属性,隐藏光标:
tk_window.config(cursor="none")
完整示例代码
import turtle # 初始化turtle屏幕 screen = turtle.Screen() # 获取turtle绑定的底层Tkinter顶层窗口 tk_root = screen.getcanvas().winfo_toplevel() # 隐藏整个turtle窗口范围内的鼠标光标 tk_root.config(cursor="none") # 测试用turtle绘图逻辑 t = turtle.Turtle() t.forward(150) t.right(90) t.forward(150) turtle.done()
你之前自行创建独立Tk窗口的方案不生效,是因为自建窗口和turtle默认创建的窗口属于两个独立的顶层窗口,光标配置只会作用于配置对应的窗口本身。
内容的提问来源于stack exchange,提问作者Jack Snowdon
相关产品推荐
相关产品推荐

