메인 윈도우 및 요소 생성
이제 QR 코드 생성기 인터페이스에 필요한 메인 윈도우, 레이블, 입력 필드, 캔버스 및 버튼을 생성하는 create_window라는 함수를 정의하기 위해 다음 코드를 추가합니다:
def create_window():
window = tk.Tk()
window.title('QR Code Generator')
label = tk.Label(window, text='Enter the text/URL:')
label.pack()
ent = tk.Entry(window)
ent.pack()
canvas = tk.Canvas(window, width=200, height=200)
canvas.pack()
def generate_and_display():
text = ent.get()
filename = generate_qr(text)
photo = ImageTk.PhotoImage(Image.open(filename))
canvas.create_image(100, 100, image=photo)
button2 = tk.Button(window, text='Save QR Code', command=lambda: save_qr(filename))
button2.pack()
window.mainloop()
button = tk.Button(window, text='Generate QR Code', command=generate_and_display)
button.pack()
window.mainloop()
tkinter 라이브러리를 사용하여 메인 윈도우, 레이블, 입력 필드, 캔버스 및 버튼을 생성합니다. create_window 함수는 메인 윈도우를 생성하고 사용자가 QR 코드가 포함할 텍스트 또는 URL 을 입력할 수 있도록 레이블과 입력 필드를 추가합니다. 또한 함수는 생성된 QR 코드 이미지를 표시하는 데 사용될 캔버스도 생성합니다. 그런 다음 함수는 generate_and_display라는 중첩 함수를 정의합니다. 이 함수는 입력 필드에서 텍스트를 가져와 QR 코드 이미지를 생성하고 캔버스에 QR 코드 이미지를 표시합니다. 또한 함수는 사용자가 생성된 QR 코드 이미지를 저장할 수 있는 버튼을 생성합니다. 마지막으로 함수는 클릭 시 generate_and_display 함수를 호출하는 버튼을 생성합니다.