Hi @ll!
Hab mal wieder ne Frage:
Ich will ein Entry erstellen, in dem alles was eingegeben wurde als * angezeigt wird! Also wie bei der Eiongabe von Passwörtern! Wie geht das? Ich will aber auch mit dem eingegebenen Wert arbeiten!
Danke schon mal
ICH
Entry
Hi Dokkie!
Ich verwende Tkinter! Eingeben tu ich die Daten im IDLE!
ICH
Ich verwende Tkinter! Eingeben tu ich die Daten im IDLE!
ICH
-
- Python-Forum Veteran
- Beiträge: 2010
- Registriert: Freitag 11. Oktober 2002, 18:00
- Wohnort: Salzburg
- Kontaktdaten:
Hi Tux,
hier ein ganz kleines und simples beispiel,
wichtig ist beim Entrywidget, die Option show="*"-
Gruß
Dookie
hier ein ganz kleines und simples beispiel,
Code: Alles auswählen
from Tkinter import *
dialog = Toplevel()
password = StringVar()
label = Label(dialog,text="Passwort")
//---- hier kommts ----//
entry = Entry(dialog, textvariable=password, show="*")
label.pack(side="left")
entry.pack(side="left")
entry.bind("<Return>", lambda event: dialog.destroy())
dialog.mainloop()
print password.get()
Gruß
Dookie
Hi Dookie!
1.) Danke!
2.) Eine Zeile versteh ich net ganz (weiß nicht wofür sie gut ist):
ICH
1.) Danke!
2.) Eine Zeile versteh ich net ganz (weiß nicht wofür sie gut ist):
Code: Alles auswählen
entry.bind("<Return>", lambda event: dialog.destroy())
wie es in "einstieg in pyhton" (galileo computing) beschrieben wird:
import sys
from Tkinter import*
def ende():
sys.exit(0)
#Unersuchung des Passwortes
def pwtest():
eingabe=e.get()
if eingabe=="bingo":
lb["text"]="Zugang erlaubt"
else:
lb["text"]="Zugang verweigert"
hauptfenster=Tk()
#Eingabefeld mit Zeichen * als Darstellung
e=Entry(hauptfenster,show="*")
e.pack()
#Test der Eingabe
btest=Button(hauptfenster,text="Login",command=pwtest)
btest.pack()
#Anzeige des Ergebnisses
lb=Label(hauptfenster,text="Zugang")
lb.pack()
bende=Button(hauptfenster,text="Ende",command=ende)
bende.pack()
hauptfenster.mainloop()
---das buch ist überhaupt sehr empfehlenswert, weil es viele impulse gibt. und sich nicht zu sehr in theorie verliert.
mfg
roland
import sys
from Tkinter import*
def ende():
sys.exit(0)
#Unersuchung des Passwortes
def pwtest():
eingabe=e.get()
if eingabe=="bingo":
lb["text"]="Zugang erlaubt"
else:
lb["text"]="Zugang verweigert"
hauptfenster=Tk()
#Eingabefeld mit Zeichen * als Darstellung
e=Entry(hauptfenster,show="*")
e.pack()
#Test der Eingabe
btest=Button(hauptfenster,text="Login",command=pwtest)
btest.pack()
#Anzeige des Ergebnisses
lb=Label(hauptfenster,text="Zugang")
lb.pack()
bende=Button(hauptfenster,text="Ende",command=ende)
bende.pack()
hauptfenster.mainloop()
---das buch ist überhaupt sehr empfehlenswert, weil es viele impulse gibt. und sich nicht zu sehr in theorie verliert.
mfg
roland
-
- Python-Forum Veteran
- Beiträge: 2010
- Registriert: Freitag 11. Oktober 2002, 18:00
- Wohnort: Salzburg
- Kontaktdaten:
Hi nochmal
@rogal: Wenn Du hier Pythoncode postest, schließe diesen in <code> Dein Beispiel </code> ein, nimm statt der spitzen Klammern eckige.
Gruß
Dookie
Wie Du sicher schon weißt, kannst Du mit widget.bind(event, action) an ein Ereignis (event) wie dem Anklicken des Widgets mit der Maus oder eben auch Tastendrücken, eine Funktion (action) in der Form funktion(event) zuordnen. Der Ausdruck "lambda event: dialog.destroy()" ist nur ein Wraper um beim einreten des Ereignises "<Return>-Taste gedrückt" das Fenster zu schließen. Genau so gut hätte ich auch schreiben könnenTux hat geschrieben:Hi Dookie!
2.) Eine Zeile versteh ich net ganz (weiß nicht wofür sie gut ist):
Code: Alles auswählen
entry.bind("<Return>", lambda event: dialog.destroy())
Code: Alles auswählen
def closeDialog(event):
dialog.destroy()
entry.bind("<Return>", closeDialog)
Gruß
Dookie