用户:GXZL查看:0 回复:0 评论:0 创建时间:2021-05-15T19:00:08
【作品展示】

【作品介绍】
一个tkinter以及turtle绘图联合作品,有四项选择,分别对应不同的天象以及不同的诗词句子。
【作品源代码】
from tkinter import *
import turtle as t
root = Tk()
root.title('星空图鉴')
root.geometry('980x600+200+50')
root.resizable(0,0)
def sun():
t.speed(0)
t.pensize(10)
t.penup()
t.goto(50, 100)
t.pendown()
t.pencolor('yellow') # 圆的颜色
t.fillcolor('red')
t.begin_fill()
t.circle(100) # 圆的半径
t.end_fill()
t.penup()
t.goto(-300, 0)
t.pendown()
t.pencolor('blue')
t.write('日出东南隅', font=('Arial', 40, 'italic'))
t.done()
def moon():
import random
t.hideturtle() # 隐藏画笔
#初始化设定
t.bgcolor("black")
t.speed(0)
t.pensize(2)
t.penup()
t.goto(0, -300)
#绘制山川
t.pencolor('cyan')
t.fillcolor("cyan") # 山川的颜色
t.penup()
t.goto(-700, -350)
t.pendown()
for i in range(random.randint(4,6)):
t.begin_fill()
t.left(60) # 开始绘制
a = random.randint(300, 500) # 山川的高度
t.forward(a)
t.right(120)
t.forward(a)
t.end_fill()
t.left(60)
#绘制月亮
t.penup()
t.goto(100,100)
t.pendown()
t.pencolor('yellow') # 圆的颜色
t.fillcolor('yellow')
t.begin_fill()
t.circle(150) # 圆的半径
t.end_fill()
t.penup()
t.goto(-300,0)
t.pendown()
t.pencolor('red')
t.write('月出于东山之上,徘徊于斗牛之间',font=('Arial', 40, 'italic'))
t.done()
def star():
import random
t.hideturtle()
t.speed(0)
t.pensize(2)
t.bgcolor('black')
for x in range(100):
t.penup()
t.goto(random.randint(-400,400), random.randint(-300, 300))
t.fillcolor(random.uniform(0, 1), random.uniform(
0, 1), random.uniform(0, 1))
t.pendown()
l = random.uniform(20,60)
d = random.randint(3, 12)
t.begin_fill()
t.left(random.randint(0, 360))
for i in range(d):
t.forward(l/d)
t.left(360/d)
t.end_fill()
t.penup()
t.goto(-300, 0)
t.pendown()
t.pencolor('white')
t.write('携星河入梦', font=('Arial', 40, 'italic'))
t.done()
def gui():
import random as r
t.hideturtle()
t.pencolor('black')
t.pensize(1)
t.speed(0)
t.fillcolor('black')
t.penup()
t.goto(-400, -400)
t.pendown()
t.begin_fill()
for i in range(4):
t.forward(800)
t.left(90)
t.end_fill()
t.penup()
t.goto(0, 0)
t.pendown()
t.pencolor('cyan')
for i in range(0,100, 1):
t.pencolor(r.uniform(0.2, 1), r.uniform(0.2, 1), r.uniform(0.2, 1))
radius = r.randint(5, 400)
t.left(r.randint(0, 360))
t.penup()
t.forward(radius)
t.left(90)
t.pendown()
t.circle(radius, r.randint(50, 100))
t.penup()
t.goto(0, 0)
t.pendown()
t.pencolor('cyan')
t.penup()
t.goto(-350, 0)
t.pendown()
t.write('别怕路长梦少,总有星河照耀', font=('Arial', 40, 'italic'))
t.done()
label_title = Label(root, text='选择一个天象绘制', font=('微软雅黑', 92))
label_title.grid(row=0, column=0, columnspan=4)
button_first = Button(root,text = '日',font=('宋体',60),command = sun)
button_first.grid(row=1,column=0)
button_last = Button(root, text='月', font=('宋体', 60), command= moon)
button_last.grid(row=1, column=1)
button_pre = Button(root, text='星', font=('宋体', 60), command=star)
button_pre.grid(row=1, column=2)
button_next = Button(root, text='轨', font=('宋体', 60), command=gui)
button_next.grid(row=1, column=3)
root.mainloop()
【提示】
部分含有Python第三方库相关内容的作品,在海龟编辑器网页端无法运行哦!如遇到这种情况,可以打开下面的链接,下载海龟编辑器客户端:
https://python.codemao.cn