Python (Tkinter): Création d’un formulaire pour un profil et un code QR avec une base de données Excel

Posted by

Python (Tkinter) : Formulaire (Profil et Code QR) avec une base de donnée Excel

Python (Tkinter) : Formulaire (Profil et Code QR) avec une base de donnée Excel

Python est un langage de programmation polyvalent et largement utilisé dans le développement d’applications de bureau. Lorsqu’il s’agit de créer des interfaces graphiques, Tkinter est l’une des bibliothèques les plus populaires utilisées par les développeurs en Python. Dans ce tutoriel, nous allons découvrir comment créer un formulaire de profil utilisateur avec génération de code QR en utilisant Tkinter et une base de donnée Excel.

Étapes à suivre :

  1. Créez un fichier Excel avec les colonnes suivantes : Nom, Prénom, Email et Code QR.
  2. Installez la bibliothèque xlrd pour lire les données à partir du fichier Excel en exécutant la commande suivante dans votre terminal :

pip install xlrd

  • Créez une interface graphique en utilisant Tkinter pour permettre à l’utilisateur de saisir ses informations de profil : nom, prénom et email.
  • Lorsque l’utilisateur soumet le formulaire, générez un code QR à partir de ses informations et enregistrez-le dans la colonne correspondante du fichier Excel.
  • Exemple de code :

    import tkinter as tk
    import qrcode
    import xlrd
    
    def generate_qr():
        data = f"Nom : {nom_entry.get()}nPrénom : {prenom_entry.get()}nEmail : {email_entry.get()}"
        qr = qrcode.QRCode(version=1, error_correction=qrcode.constants.ERROR_CORRECT_H, box_size=10, border=4)
        qr.add_data(data)
        qr.make(fit=True)
        img = qr.make_image(fill_color="black", back_color="white")
        img.save(f"{nom_entry.get()}_{prenom_entry.get()}_QR.png")
    
        # Enregistrez le code QR dans la base de donnée Excel
        workbook = xlrd.open_workbook("data.xlsx")
        sheet = workbook.sheet_by_index(0)
        row = sheet.nrows
        new_workbook = copy(workbook)
        new_sheet = new_workbook.get_sheet(0)
        new_sheet.write(row, 0, nom_entry.get())
        new_sheet.write(row, 1, prenom_entry.get())
        new_sheet.write(row, 2, email_entry.get())
        new_sheet.write(row, 3, f"{nom_entry.get()}_{prenom_entry.get()}_QR.png")
        new_workbook.save("data.xlsx")
    
    # Créer une fenêtre
    root = tk.Tk()
    root.title("Formulaire de Profil")
    
    # Interface graphique
    nom_label = tk.Label(root, text="Nom :")
    nom_label.pack()
    nom_entry = tk.Entry(root)
    nom_entry.pack()
    
    prenom_label = tk.Label(root, text="Prénom :")
    prenom_label.pack()
    prenom_entry = tk.Entry(root)
    prenom_entry.pack()
    
    email_label = tk.Label(root, text="Email :")
    email_label.pack()
    email_entry = tk.Entry(root)
    email_entry.pack()
    
    submit_button = tk.Button(root, text="Soumettre", command=generate_qr)
    submit_button.pack()
    
    # Lancer l'interface graphique
    root.mainloop()
    

    Avec ce code, vous pourrez créer un formulaire de profil utilisateur avec génération de code QR en utilisant Tkinter et une base de donnée Excel. N’hésitez pas à personnaliser ce code selon vos besoins et à l’intégrer dans vos projets Python !

    0 0 votes
    Article Rating
    3 Comments
    Oldest
    Newest Most Voted
    Inline Feedbacks
    View all comments
    @DocteurPython
    4 months ago

    J'ai une question question parallèle à savoir :
    Pourquoi si on exécute parfois le : auto-py-to-exe
    Génère des erreurs ?

    @meccalme6587
    4 months ago

    Très bon projet mais on a pas reçu l'image du profil

    @ElectroTechpro12
    4 months ago

    Abo