python中如何让turtle在制图中间写字_阅读Turtle库源码(二) | 如何在turtle绘图窗口中添加Button按钮!...

本文介绍了如何通过阅读Turtle库源码,在turtle绘图窗口中添加按钮,实现海龟绘图的交互式功能。通过添加Frame组件和不同功能的Button,如控制海龟运动、画笔操作、清除痕迹等,增强了turtle绘图的可玩性。
摘要由CSDN通过智能技术生成

继续带领大家阅读海龟库源码。今天来

介绍一下如何在turtle绘图窗口中添加按钮, 从而实现海龟库下一些交互式程序的开发。

上一讲介绍了turtle源码中的类_Root,它是启动海龟绘图的根窗口类,继承于tkinter库的TK类,当运行以下代码时

import turtle

r = turtle._Root()

r.set_geometry(800, 800, 0, 0)

r.mainloop()

会弹出一个tk窗口。

此时,窗口中啥都没有。利用前一篇文章所述(阅读Turtle库源码(二) |  如何在turtle绘图窗口中添加多画布!), 要利用海龟绘图,我们首先要往窗口中添加画布,代码如下。

import turtle

r = turtle._Root()

r.set_geometry(800, 800, 0, 0)

# 添加画布

cv2 = turtle.ScrolledCanvas(r)

cv2.pack(expand=True, fill=tk.BOTH)

r.mainloop()

启动后,弹出以下带画布的窗口。

接下来,放上一只海龟。

import turtle

r = turtle._Root()

r.set_geometry(800, 800, 0, 0)

# 添加画布

cv2 = turtle.ScrolledCanvas(r)

cv2.pack(expand=True, fill=tk.BOTH)

t = turtle.RawPen(cv2)

t.shape('turtle')

t.shapesize(2, 2)

t.pensize(5)

r.mainloop()

此时,画布的中央出现了一只海龟,形状是小球。

加下来注意啦,我们开始向海龟绘图窗口添加其他tkinter组件,首先添加一个F

  • 0
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
TurtlePython语言一个很流行的绘制图像的函数。它提供了一系列的函数可以通过控制一个虚拟的海龟来进行图形绘制。其一些常用的函数包括: - turtle.forward(distance): 向当前画笔方向移动distance像素长度。 - turtle.backward(distance): 向当前画笔相反方向移动distance像素长度。 - turtle.right(degree): 顺时针移动degree°。 - turtle.left(degree): 逆时针移动degree°。 - turtle.pendown(): 移动时绘制图形,缺省时也为绘制。 - turtle.goto(x,y): 将画笔移动到指定的坐标(x,y)处。 下面是一个使用Turtle绘制艺术图的例子: ```python import turtle as tur import colorsys as cs tur.speed(0) # 设置绘制速度 tur.width(1) # 设置线条宽度 tur.bgcolor('black') # 设置背景颜色 h = 0.0 for j in range(4): for i in range(100): tur.color(cs.hsv_to_rgb(h,1,1)) # 根据HSV颜色模型设置颜色 tur.circle(10 * (i+1)) # 绘制圆形 h += 0.01 tur.right(90) tur.hideturtle() # 隐藏画笔 tur.done() # 结束绘制 ``` 这段代码将绘制一个四彩虹的图形,具体的绘制过程是循环绘制100个不同大小的圆形,并根据HSV颜色模型设置每个圆形的颜色。最后,通过调用`tur.hideturtle()`隐藏画笔并调用`tur.done()`结束绘制。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [详解Python绘图Turtle](https://download.csdn.net/download/weixin_38722184/12858850)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *2* *3* [Python绘图Turtle详解](https://blog.csdn.net/gongdiwudu/article/details/122594403)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值