Ich bin es wieder. Ich hab letztens von Sirius ein Code gesehen (viewtopic.php?f=18&t=45730) es ging ums PW Generieren.
Das fand Ich so interessant das ich es Kopiert hab und versucht habe daraus eine Anwendung zu machen. Wo man ein Eingabefeld hat das man den Grund schreibt und das man dann
Die Info + den PW in ein Dokument abspeichert aaaabbbber Irgendwie will es auf keinen Fall speichern was ich eintippe und Ich rede hier nur vom selber eingeben nicht mal vom PW abspeichern.
Code: Alles auswählen
Im Quellcode ist es Eingabe1. Ich hab es versucht mit .get() irgendwie auslagern in eine def es geht einfach nicht im Internet finde Ich auch nichts richtiges (glaube ich) vllt versteht ihr mein Problem und könnt mir weiter helfen.
Ich will einfach nur verstehen wie das Funktioniert damit ich es dann selber mal machen kann ^^.
vielen dank für eure Hilfe
Code: Alles auswählen
import tkinter as tk
import random
import string
from tkinter import filedialog
from functools import partial
root = tk.Tk()
root.title("PW Generator")
root.geometry("500x500")
CHARS = string.ascii_lowercase + string.digits
def generate(eingabe, password_str):
laenge = int(eingabe.get())
if laenge < 2:
laenge = 2
password = ''.join(random.choices(CHARS, k=laenge))
password_str.set(password)
def save_file():
# x = eingabe1.get()
f = filedialog.asksaveasfile(mode='w', defaultextension=".txt")
if f is None:
return
f.write("\n")
f.write("hi")
f.close()
def main():
label = tk.Label(root, text="Der Passwortgenerator", fg="red", font="Helvetica 16 bold italic")
label.pack()
label1= tk.Label(root, text="Für was Brauchst du PW")
label1.pack()
eingabe1 = tk.Entry()
eingabe1.pack()
label2= tk.Label(root, text="PW Länge eingeben:")
label2.pack()
eingabe = tk.Entry()
eingabe.insert(0, "")
eingabe.pack()
passwort_str = tk.StringVar()
tk.Button(root, text="Erzeugen", command=partial(generate, eingabe, passwort_str)).pack()
tk.Entry(root, textvariable=passwort_str).pack()
tk.Button(root, text="Speichern", command= save_file).pack()
root.mainloop()
if __name__ == '__main__':
main()