IDLE를 시작하면 스크립트모드(한줄씩 실행)아닌 New File> 대화형 모드로 코드 작성!
from tkinter import*
#변수선언
window = None
canvas = None
x1,y1,x2,y2 = None,None,None,None #선의 시작과 끝
#함수
def mouseClick(event):
global x1,y1,x2,y2
x1= event.x
y1=event.y
def mouseDrop(event):
global x1,y1,x2,y2
x2=event.x
y2=event.y
canvas.create_line(x1,y1,x2,y2,width=5,fill="red")
#메인 코드
window = Tk()
window.title("그림판 비슷한 프로그램")
canvas = Canvas(window,height=300,width=300)
canvas.bind("<Button-1>",mouseClick)
canvas.bind("<ButtonRelease-1>",mouseDrop)
canvas.pack()
window.mainloop()
<Button-1>-왼쪽, <Button-2>-가운데, <Button-3>-오른쪽 버튼
<결과>
파이썬 Turtle Module 사용 그림판
#사각형 그리기
import turtle
t=turtle.Pen()
t.pensize(10)
t.pencolor("blue")
t.forward(300)
t.left(90)
t.forward(300)
t.left(90)
t.forward(300)
t.left(90)
t.forward(300)
##지우기
#t.reset()
#t.clear()
#삼각형 그리기
import turtle
t=turtle.Pen()
t.pensize(5)
t.pencolor("blue")
t.forward(300)
t.left(120)
t.forward(300)
t.left(120)
t.forward(300)
#t.reset()
#t.clear()
#별그리기
import turtle
t=turtle.Pen()
t.pensize(5)
t.pencolor("blue")
#t.up()펜을 들어 그림 그리지 않음
#t.down() 그림 다시 그림
t.forward(300)
t.left(120)
t.forward(300)
t.left(120)
t.forward(300)
t.up()
t.right(150)
t.forward(170)
t.right(90)
t.down()
t.forward(300)
t.right(120)
t.forward(300)
t.right(120)
t.forward(300)
#t.reset()
#t.clear()
import turtle #모듈 임포트
loadWindow = turtle.Screen() #create window
turtle.speed(100)
for i in range(100):
turtle.circle(10*i)
turtle.circle(-10*i)
turtle.left(i)
<최종 그림판 결과>
from tkinter import*
window = None
canvas = None
x1,y1 = None,None
def mouseMove(event):
global x1,y1
x1=event.x
y1 =event.y
canvas.create_line(x1,y1,x1+1,y1+1,width=10,fill="black")
window = Tk()
window.title("마우스 드래그 그림판")
canvas = Canvas(window,height=700,width=700)
canvas.bind("<B1-Motion>",mouseMove)
canvas.pack()
window.mainloop()
'Python' 카테고리의 다른 글
파이썬 크롤링과 시각화 기본다지기(5) (0) | 2021.09.28 |
---|---|
파이썬 크롤링과 시각화 기본다지기(4) (0) | 2021.09.23 |
파이썬 크롤링과 시각화 기본다지기(3) (0) | 2021.09.21 |
파이썬 크롤링과 시각화 기본다지기(2) (2) | 2021.09.21 |
파이썬 크롤링과 시각화 기본다지기(1) (0) | 2021.09.17 |