turtle - TurtleScreen/Screen 方法及对应函数[详解]

窗口控制

bgcolor(*args)
参数
args - 一个颜色字符串或三个取值范围 0..colormode 内的数值或一个取值范围相同的数值3元组
设置或返回 TurtleScreen 的背景颜色。

bgpic(picname=None)
参数
picname - 一个字符串, gif-文件名, "nopic", 或 None
设置背景图片或返回当前背景图片名称。如果 picname 为一个文件名,则将相应图片设为背景。如果 picname 为 "nopic",则删除当前背景图片。如果 picname 为 None,则返回当前背景图片文件名。

clear()
clearscreen()
从中删除所有海龟的全部绘图。将已清空的 TurtleScreen 重置为初始状态: 白色背景,无背景片,无事件绑定并启用追踪。
注解
此 TurtleScreen 方法作为全局函数时只有一个名字 clearscreen。全局函数 clear 所对应的是 Turtle 方法 clear。

reset()
resetscreen()
重置屏幕上的所有海龟为其初始状态。
注解
此 TurtleScreen 方法作为全局函数时只有一个名字 resetscreen。全局函数 reset 所对应的是 Turtle 方法 reset。

screensize(canvwidth=Nonecanvheight=Nonebg=None)
参数
canvwidth - 正整型数,以像素表示画布的新宽度值
canvheight - 正整型数,以像素表示画面的新高度值
bg - 颜色字符串或颜色元组,新的背景颜色
如未指定任何参数,则返回当前的 (canvaswidth, canvasheight)。否则改变作为海龟绘图场所的画布大小。不改变绘图窗口。要观察画布的隐藏区域,可以使用滚动条。通过此方法可以令之前绘制于画布之外的图形变为可见。
也可以用来寻找意外逃走的海龟 ;-)

setworldcoordinates(llxllyurxury)
参数
llx - 一个数值, 画布左下角的 x-坐标
lly - 一个数值, 画布左下角的 y-坐标
urx - 一个数值, 画面右上角的 x-坐标
ury - 一个数值, 画布右上角的 y-坐标
设置用户自定义坐标系并在必要时切换模式为 "world"。这会执行一次 screen.reset()。如果 "world" 模式已激活,则所有图形将根据新的坐标系重绘。
注意: 在用户自定义坐标系中,角度可能显得扭曲。

动画控制

delay(delay=None)
参数
delay - 正整型数
设置或返回以毫秒数表示的延迟值 delay。(这约等于连续两次画布刷新的间隔时间。) 绘图延迟越长,动画速度越慢。

tracer(n=Nonedelay=None)
参数
n - 非负整型数
delay - 非负整型数
启用/禁用海龟动画并设置刷新图形的延迟时间。如果指定 n 值,则只有每第 n 次屏幕刷新会实际执行。(可被用来加速复杂图形的绘制。) 如果调用时不带参数,则返回当前保存的 n 值。第二个参数设置延迟值 (参见 delay())。

update()
执行一次 TurtleScreen 刷新。在禁用追踪时使用。
另参见 RawTurtle/Turtle 方法 speed()。

使用屏幕事件

listen(xdummy=Noneydummy=None)
设置焦点到 TurtleScreen (以便接收按键事件)。使用两个 Dummy 参数以便能够传递 listen() 给 onclick 方法。

onkey(funkey)
onkeyrelease(funkey)
参数
fun - 一个无参数的函数或 None
key - 一个字符串: 键 (例如 "a") 或键标 (例如 "space")
绑定 fun 指定的函数到按键释放事件。如果 fun 值为 None,则移除事件绑定。注: 为了能够注册按键事件,TurtleScreen 必须得到焦点。(参见 method listen() 方法。)

onkeypress(funkey=None)
参数
fun - 一个无参数的函数或 None
key - 一个字符串: 键 (例如 "a") 或键标 (例如 "space")
绑定 fun 指定的函数到指定键的按下事件。如未指定键则绑定到任意键的按下事件。注: 为了能够注册按键事件,必须得到焦点。(参见 listen() 方法。)

onclick(funbtn=1add=None)
onscreenclick(funbtn=1add=None)
参数
fun - 一个函数,调用时将传入两个参数表示在画布上点击的坐标。
btn - 鼠标按钮编号,默认值为 1 (鼠标左键)
add - True 或 False -- 如为 True 则将添加一个新绑定,否则将取代先前的绑定
绑定 fun 指定的函数到鼠标点击屏幕事件。如果 fun 值为 None,则移除现有的绑定。
注解
此 TurtleScreen 方法作为全局函数时只有一个名字 onscreenclick。全局函数 onclick 所对应的是 Turtle 方法 onclick。

ontimer(funt=0)
参数
fun - 一个无参数的函数
t - 一个数值 >= 0
安装一个计时器,在 t 毫秒后调用 fun 函数。

mainloop()
done()
开始事件循环 - 调用 Tkinter 的 mainloop 函数。必须作为一个海龟绘图程序的结束语句。如果一个脚本是在以 -n 模式 (无子进程) 启动的 IDLE 中运行时 不可 使用 - 用于实现海龟绘图的交互功能。

输入方法

textinput(titleprompt)
参数
title - 字符串
prompt - 字符串
弹出一个对话框窗口用来输入一个字符串。形参 title 为对话框窗口的标题,prompt 为一条文本,通常用来提示要输入什么信息。返回输入的字符串。如果对话框被取消则返回 None。

numinput(titlepromptdefault=Noneminval=Nonemaxval=None)
参数
title -- 字符串
prompt -- 字符串
default -- 数值 (可选)
minval -- 数值 (可选)
maxval -- 数值 (可选)
弹出一个对话框窗口用来输入一个数值。title 为对话框窗口的标题,prompt 为一条文本,通常用来描述要输入的数值信息。default: 默认值, minval: 可输入的最小值, maxval: 可输入的最大值。输入数值的必须在指定的 minval .. maxval 范围之内,否则将给出一条提示,对话框保持打开等待修改。返回输入的数值。如果对话框被取消则返回 None。

设置与特殊方法

mode(mode=None)
参数
mode -- 字符串 "standard", "logo" 或 "world" 其中之一
设置海龟模式 ("standard", "logo" 或 "world") 并执行重置。如未指定模式则返回当前的模式。
"standard" 模式与旧的 turtle 兼容。"logo" 模式与大部分 Logo 海龟绘图兼容。"world" 模式使用用户自定义的 "世界坐标系"。注意: 在此模式下,如果 x/y 单位比率不等于 1 则角度会显得扭曲。
模式            初始海龟朝向      正数角度
"standard"    朝右 (东)             逆时针
"logo"           朝上 (北)             顺时针

colormode(cmode=None)
参数
cmode -- 数值 1.0 或 255 其中之一
返回颜色模式或将其设为 1.0 或 255。构成颜色三元组的 rgb 数值必须在 0..cmode 范围之内。

getcanvas()
返回此 TurtleScreen 的 Canvas 对象。供了解 Tkinter 的 Canvas 对象内部机理的人士使用。

getshapes()
返回所有当前可用海龟形状的列表。

register_shape(nameshape=None)
addshape(nameshape=None)
调用此函数有三种不同方式:
1. name 为一个 gif 文件的文件名, shape 为 None: 安装相应的图像形状。
2. name 为指定的字符串,shape 为由坐标值对构成的元组: 安装相应的多边形形状。
3.name 为指定的字符串, 为一个 (复合) Shape 类对象: 安装相应的复合形状。
将一个海龟形状加入 TurtleScreen 的形状列表。只有这样注册过的形状才能通过执行 shape(shapename) 命令来使用。

turtles()
返回屏幕上的海龟列表。

window_height()
返回海龟窗口的高度。

window_width()
返回海龟窗口的宽度。

Screen 专有方法, 而非继承自 TurtleScreen

bye()
关闭海龟绘图窗口。

exitonclick()
将 bye() 方法绑定到 Screen 上的鼠标点击事件。
如果配置字典中 "using_IDLE" 的值为 False (默认值) 则同时进入主事件循环。注: 如果启动 IDLE 时使用了 -n 开关 (无子进程),turtle.cfg 中此数值应设为 True。在此情况下 IDLE 本身的主事件循环同样会作用于客户脚本。

setup(width=_CFG["width"], height=_CFG["height"], startx=_CFG["leftright"], starty=_CFG["topbottom"])
设置主窗口的大小和位置。默认参数值保存在配置字典中,可通过 turtle.cfg 文件进行修改。
参数
width -- 如为一个整型数值,表示大小为多少像素,如为一个浮点数值,则表示屏幕的占比;默认为屏幕的 50%
height -- 如为一个整型数值,表示高度为多少像素,如为一个浮点数值,则表示屏幕的占比;默认为屏幕的 75%
startx -- 如为正值,表示初始位置距离屏幕左边缘多少像素,负值表示距离右边缘,None 表示窗口水平居中
starty -- 如为正值,表示初始位置距离屏幕上边缘多少像素,负值表示距离下边缘,None 表示窗口垂直居中

title(titlestring)
参数
titlestring -- 一个字符串,显示为海龟绘图窗口的标题栏文本
设置海龟窗口标题为 titlestring 指定的文本。

===
内容来源:官方文库
牛猫名言:最好的资料就是官方文档
===
本文链接:https://www.jianshu.com/p/2738f78af3ae
转载请注明,谢谢!
编辑:牛猫大侠

你可能感兴趣的:(turtle - TurtleScreen/Screen 方法及对应函数[详解])