Cəfər Cabbarlı 44, Caspian Plaza

Məktəblilər üçün proqramlaşdırma dərslərimizin tələbəsi Ziya tərəfindən hazırlanmış “QR Kod Generator” proqramı Python proqramlaşdırma dilində hazırlanmışdır. Praktik və real layihələrə əsaslanan dərslərdən övladınızın da faydalanması üçün qeydiyyatdan keçin !




Qeydiyyat üçün link: https://www.edtech.az/kurslar/mektebliler-ucun-proqramlasdirma-dersleri/


Layihənin kodu:


import tkinter as tk 
from tkinter.scrolledtext import ScrolledText
import qrcode
from tkinter.filedialog import asksaveasfile
from PIL import  Image, ImageTk


root=tk.Tk()
root.geometry("450x430")
root.title("QR Code Generator")

qrcode_image=None
qrcode_color="black"

def generate_qrcode(): 
    global qrcode_image
    
    text_data=text_box.get(1.0, tk.END)
    
    qr=qrcode.QRCode(border=1)
    qr.add_data(text_data)
    qr_img_obj=qr.make_image(fill_color=qrcode_color)
    
    qrcode_image=ImageTk.PhotoImage(qr_img_obj)
    
    

    
    if qrcode_image.height()>=230 or qrcode_image.width()>=230:
        
        resize_qrcode=qr_img_obj.get_image().resize((230,230))
        qrcode_image=ImageTk.PhotoImage(resize_qrcode)
    qr_code_lb.config(image=qrcode_image)
    
    

def save_qrcode():
    file_name=asksaveasfile()
    
    if file_name: 
        text_data=text_box.get(1.0, tk.END)
        
        qr=qrcode.QRCode(border=1)
        qr.add_data(text_data)
        qr_img_obj=qr.make_image(fill_color=qrcode_color)
        
        resize_qrcode=qr_img_obj.get_image().resize((230,230))
        if str(file_name).endswith(".png"):
            resize_qrcode.save(file_name)
        else: 
            resize_qrcode.save(f"{file_name}.png")
        
        
        

lb=tk.Label(root, text="Enter Any Information", font=("Bold", 12))
lb.pack(anchor=tk.W, pady=10, padx=5)

text_box=ScrolledText(root, height=10, width=20, font=("Bold", 12))
text_box.pack(anchor=tk.W, padx=5)

generate_btn=tk.Button(root, text="Generate", command=generate_qrcode)
generate_btn.pack(anchor=tk.W, pady=10, padx=5)


qr_frame=tk.Frame(root, bg="white")

qr_img=tk.PhotoImage(file="qr1.png")
qr_code_lb=tk.Label(qr_frame, image=qr_img)
qr_code_lb.pack()


save_qr_btn=tk.Button(qr_frame, text="Save Qr Code")
save_qr_btn.pack(anchor=tk.W, padx=5)
qr_frame.place(x=200, y=20, width=240, height=400)
root.mainloop()
1