파이썬 질문!!

파이썬 질문!!

QA

파이썬 질문!!

본문

expression cannot contain assignment, perhaps you meant "=="?

이런 오류가 뜨는데 어떻게 해야되나요?

 

import tkinter as tk

# 선택:0, # 선:1, 사각형:2, 원:3
draw_mode = 0
#색
draw_color = "black"

# x1, y1: 시작점
x1 = None
y1 = None

# 마우스 왼쪽 버튼을 눌렀을 때
def mouseLDown(event):
    global x1, y1
    mouse_text .set("X:"+str(event .x)+" Y:"+str(event .y)+" L Down")

#마우스를 움직일 때
def mouseMove(event):
    global x1, y1
    mouse_text .set("X:"+str(event .x)+" Y:"+str(event .y)+" Move")

# 마우스 왼쪽 버튼을 뗐을 때
def mouseLUp(event):
    global x1, y1
    mouse_text .set("X:"+str(event .x)+" Y:"+str(event .y)+" L Up")

    # 선 그리기 모드라면
    if draw_mode == 1:
        canvas.create_line(x1. y1. event.x. event.y. width=2. fill=draw_color)
    # 네모 그리기 모드라면
    elif draw_mode == 2:
        canvas.create_rectangle(x1. y1. event.x. event.y. width=2. out line=draw_color)
    # 원 그리기 모드라면
    elif draw_mode == 3:
        canvas.create_oval(x1. y1. event.x. event.y. width=2. out line=draw_color)

# 선택 버튼 함수
def selectButton():
    global draw_mode
    draw_mode = 0

# 선 그리기 버튼 함수
def lineButton():
    global draw_mode
    draw_mode = 1

# 네모 그리기 버튼 함수
def rectangleButton():
    global draw_mode
    draw_mode = 2

# 원 그리기 버튼 함수
def circleButton():
    global draw_mode
    draw_mode = 3

# 검은색 버튼 함수
def blackButton():
    global draw_color
    draw_color = "black"

# 빨간색 버튼 함수
def redButton():
    global draw_color
    draw_color = "red"

# 파란색 버튼 함수
def blueButton():
    global draw_color
    draw_color = "blue"

# 초록 버튼 함수
def greenButton():
    global draw_color
    draw_color = "green"

# 윈도우를 생성한다
window = tk.Tk()
window.title("점선면 그림판")

#스타일 프레임을 생성한다
style_frame = tk.Frame(window)
style_frame.grid(row=0, column=0, sticky=tk.W)

# 선택 버튼
select_button = tk.Button(style_frame, text=".", width=3, command=selectButton)
select_button.grid(row=0, column=0, sticky=tk.W)


# 선그리기 버튼
line_button = tk.Button(style_frame, text="/", width=3, command=lineButton)
line_button.grid(row=0, column=1, sticky=tk.W)

# 네모그리기 버튼
rectangle_button = tk.Button(style_frame, text="ㅁ", width=3, command=rectangleButton)
rectangle_button.grid(row=0, column=2, sticky=tk.W)

# 원그리기 버튼
circle_button = tk.Button(style_frame, text="ㅇ", width=3, command=circleButton)
circle_button.grid(row=0, column=3, sticky=tk.W)

# 색상 프레임을 생성한다
color_frame = tk.Frame(winfow)
color_frame.grid(row=0, column=0, sticky=tk.E)

# 검은색 버튼
black_button = tk.Button(color_frame, bg="black", width=3, command=blackButton)
black_button.grid(row=0, column=0, sticky=tk.E)

# 빨간색 버튼
red_button = tk.Button(color_frame, bg="red", width=3, command=redButton)
red_button.grid(row=0, column=1, sticky=tk.E)

# 파란색 버튼
blue_button = tk.Button(color_frame, bg="blue", width=3, command=blueButton)
blue_button.grid(row=0, column=2, sticky=tk.E)

#초록색 버튼
green_button = tk.Button(color_frame, bg="green", width=3, command=greenButton)
green_button.grid(row=0, column=3, sticky=tk.E)

#인포 프레임을 생성한다
info_frame = tk.Frame(window)
info_frame.grid(row=1, column=0, columnspan=2)

#마우스 엔트리
mouse_text = tk.StringVar()
mouse_entry = tk.Entry(info_frame, textvariable=mouse_text. width=25)
mouse_entry.grid(row=0. column=1)

#캔퍼스 프레임을 생성한다
canvs_frame = tk.Frame(window, bd=2, bg="black")
canvs_frame.grid(row=2. column=0, columnspan=2. sticky=th.W)

#캔버스 생성한다
canvas = tk. Canvas(canvas_frame. width=400, height=300, bg="black")
canvas.pack()

# 마우스 이벤트 연결
canvas.bind("<Button-1>", mouseLDown)
canvas.bind("<Motion>", mouseMove)
canvas.bind("<Buttonlease-1>", mouseLUp)

window.mainloop()

이 질문에 댓글 쓰기 :

답변 2

어휴 테스트 해볼 수 있게 오타부터 고치세요

canvas.create_line(x1. y1. event.x. event.y. width=2. fill=draw_color) <=-- 이게 웝니까?

canvas.bind("<Buttonlease-1>", mouseLUp)<-- ButtonRelease-1 아닌가요?

그외도 오타가 수두룩 합니다

 

 

 

답변을 작성하시기 전에 로그인 해주세요.
전체 208
QA 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT