#РисованиеTurtleНаХолстеTkinterВPython
Код из видео:
from turtle import *
from tkinter import *
from PIL import Image, ImageGrab
def color_change():
TurtleScreen._RUNNING = True
global color
for i in range(len(colors) - 1):
if colors[i] == color:
if i + 1 == len(colors) - 1:
t.color(colors[0])
color = colors[0]
break
else:
t.color(colors[i+1])
color = colors[i+1]
break
def on_key_press(event):
if event.keysym == 'Left':
TurtleScreen._RUNNING = True
t.left(45)
elif event.keysym == 'Right':
TurtleScreen._RUNNING = True
t.right(45)
elif event.keysym == 'Up':
TurtleScreen._RUNNING = True
t.forward(45)
elif event.keysym == 'Down':
TurtleScreen._RUNNING = True
t.back(45)
def save():
x = root.winfo_rootx() + canvas.winfo_x()
y = root.winfo_rooty() + canvas.winfo_y()
x1 = x + canvas.winfo_width()
y1 = y + canvas.winfo_height()
ImageGrab.grab().crop((x, y, x1, y1)).save('name.png')
root = Tk()
root.title('Рисовалка Turtle')
root.geometry('500x540')
root.resizable(0, 0)
colors = ['red', 'yellow', 'lime', 'green']
color = colors[0]
canvas = Canvas(master=root, width=500, height=500)
canvas.pack()
t = RawTurtle(canvas)
t.pensize(10)
t.color(color)
root.bind('<KeyPress>', on_key_press)
btn_color = Button(master=root, text='Сменить цвет', command=color_change)
btn_color.pack(side=LEFT)
btn_save = Button(master=root, text='Сохранить', command=save)
btn_save.pack(side=LEFT)
listen()
bye()
root.mainloop()
Код из видео:
from turtle import *
from tkinter import *
from PIL import Image, ImageGrab
def color_change():
TurtleScreen._RUNNING = True
global color
for i in range(len(colors) - 1):
if colors[i] == color:
if i + 1 == len(colors) - 1:
t.color(colors[0])
color = colors[0]
break
else:
t.color(colors[i+1])
color = colors[i+1]
break
def on_key_press(event):
if event.keysym == 'Left':
TurtleScreen._RUNNING = True
t.left(45)
elif event.keysym == 'Right':
TurtleScreen._RUNNING = True
t.right(45)
elif event.keysym == 'Up':
TurtleScreen._RUNNING = True
t.forward(45)
elif event.keysym == 'Down':
TurtleScreen._RUNNING = True
t.back(45)
def save():
x = root.winfo_rootx() + canvas.winfo_x()
y = root.winfo_rooty() + canvas.winfo_y()
x1 = x + canvas.winfo_width()
y1 = y + canvas.winfo_height()
ImageGrab.grab().crop((x, y, x1, y1)).save('name.png')
root = Tk()
root.title('Рисовалка Turtle')
root.geometry('500x540')
root.resizable(0, 0)
colors = ['red', 'yellow', 'lime', 'green']
color = colors[0]
canvas = Canvas(master=root, width=500, height=500)
canvas.pack()
t = RawTurtle(canvas)
t.pensize(10)
t.color(color)
root.bind('<KeyPress>', on_key_press)
btn_color = Button(master=root, text='Сменить цвет', command=color_change)
btn_color.pack(side=LEFT)
btn_save = Button(master=root, text='Сохранить', command=save)
btn_save.pack(side=LEFT)
listen()
bye()
root.mainloop()