Je n'arrive pas à faire Entry.get() et récupérer dans un fichier avec tkinter
Ploutocratique
Messages postés
1
Date d'inscription
Statut
Membre
Dernière intervention
-
Phil_1857 Messages postés 1872 Date d'inscription Statut Membre Dernière intervention -
Phil_1857 Messages postés 1872 Date d'inscription Statut Membre Dernière intervention -
Voici mon code:
contexte : faire une interface graphique avec tkinter générant un mot de passe et l'écrivant dans un fichier passwords.txt
Est-ce que vous pouvez me dire ma faute ?
contexte : faire une interface graphique avec tkinter générant un mot de passe et l'écrivant dans un fichier passwords.txt
import string from random import randint, choice from tkinter import * def get_website():#pour pouvoir avoir le site pour lequel j'ai généré le mot de passe website_entry.pack(fill=X) def get_entry(): with open("passwords.txt", "a+") as password_file: password_file.write(website_entry.get()) password_file.write(" : ") password_file.close() enter_button.pack(fill=X) get_entry() def generate_password(): password_min = 12 password_max = 24 all_chars = string.ascii_letters + string.punctuation + string.digits [/contents/64-mots-de-passe password] = "".join(choice(all_chars)for x in range(randint(password_min, password_max))) password_entry.delete(0, END) password_entry.insert(0, password) with open("passwords.txt", "a+") as file_password: file_password.write(password + "\n") file_password.close() window = Tk() window.title("Générateur de mots de passe") window.geometry("720x420") window.config(background="#4065A7") frame = Frame(window, bg='#4065A7') width = 200 height = 200 image = PhotoImage(file="password.ico").zoom(12).subsample(32) canvas = Canvas(frame, height=height, width=width, bg='#4065A4', bd=0, highlightthickness=0) canvas.create_image(width/2, height/2, image=image) canvas.grid(row=0, column=0, sticky=W) right_frame = Frame(frame, bg='#5065A4') label_title = Label(right_frame, text="Générateur de mots de passe", font=("Helvetica", 20), bg='#4065A4', fg='black') label_title.pack() password_entry = Entry(right_frame, font=("Helvetica", 20), bg='#4065A4', fg='black') password_entry.pack(fill=X) generate_password_button = Button(right_frame, text="Générer le mot de passe", font=("Helvetica", 15), bg='#4065A4', fg='black', command=generate_password) generate_password_button.pack(fill=X) enter_button = Button(right_frame, font=("Helvetica", 15), bg="#4065A4",command=get_website, fg="black", text="Valider") website_entry = Entry(right_frame, font=("Helvetica", 20), bg="#4065A4", fg="black") website = website_entry.get() frame.pack(expand=YES) right_frame.grid(row=0, column=1, sticky=W) menu_bar = Menu(window) file_menu = Menu(menu_bar, tearoff=0) file_menu.add_command(label="Nouveau", command=generate_password) file_menu.add_command(label="Quitter", command=window.quit) file_menu.add_command(label="Site Web", command=get_website) menu_bar.add_cascade(label="Fichier", menu=file_menu) window.config(menu=menu_bar) window.mainloop()
Est-ce que vous pouvez me dire ma faute ?
A voir également:
- Je n'arrive pas à faire Entry.get() et récupérer dans un fichier avec tkinter
- Fichier bin - Guide
- Comment réduire la taille d'un fichier - Guide
- Comment ouvrir un fichier epub ? - Guide
- Fichier rar - Guide
- Fichier .dat - Guide
1 réponse
Bonjour Ploutocratique,
Tu devrais revoir la doc Tkinter … :-)
Sinon:
Les 2 fonctions generate_website et get_password sont appelée à la fois par le menu et par des boutons ?
Pourquoi on pack website_entry seulement dans get_website et pas a la suite de sa création ?
C'est quoi website = website_entry.get() ligne 59 ?
Moi je fait comme çà:
Tu devrais revoir la doc Tkinter … :-)
Sinon:
Les 2 fonctions generate_website et get_password sont appelée à la fois par le menu et par des boutons ?
Pourquoi on pack website_entry seulement dans get_website et pas a la suite de sa création ?
C'est quoi website = website_entry.get() ligne 59 ?
Moi je fait comme çà:
def show_entry(): print(e1.get()) e1 = Entry(main_win, width = 10) e1.pack b1 = Button(main_win, text='Afficher', width = 20, justify = 'left', command=show_entry) b1.pack