メインウィンドウと要素を作成する
次に、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 関数を呼び出すボタンを作成します。