text fuer Entry setzen? geht das?

Fragen zu Tkinter.
Antworten
borgus
User
Beiträge: 11
Registriert: Donnerstag 18. September 2008, 13:08
Wohnort: Bremen

Hallo zusammen!
Kurze, vielleicht blöde Frage (aber ich find' einfach keine Methode in den
docs):

kann ich text in ein Entry-Feld schreiben?? Abrufen ist ja klar, aber setzen?
:?

danke!
Benutzeravatar
numerix
User
Beiträge: 2696
Registriert: Montag 11. Juni 2007, 15:09

Code: Alles auswählen

entry.insert(0,"Inhalt")
Der erste Parameter gibt die Position des Einfügens an. Das ist nur relevant, wenn schon etwas drinsteht. Soll es ans Ende, dann lautet der erste Parameter "end".
borgus
User
Beiträge: 11
Registriert: Donnerstag 18. September 2008, 13:08
Wohnort: Bremen

vielen dank, du hast mir sehr geholfen!
sea-live
User
Beiträge: 440
Registriert: Montag 18. Februar 2008, 12:24
Wohnort: RP

man sollte auch mal eine suchmaschine bemühen
da kommt dan z.B sowas bei rumm
und die info steht direkt voreinem
http://effbot.org/tkinterbook/entry.htm
Konrad Wenzel
User
Beiträge: 15
Registriert: Freitag 3. Oktober 2008, 17:19

Michael Weigend (C. 2006) schreibt auf Seite 418:
self.name.config(text=' ')
Das bewirkt im Fenster mit dem Widget garnichts, aber die bin/bash beschimpft mich seitenlang als Tölpel
Das Löschen funktioniert über
class ...
....
self.txp=StringVar()
self.name=Entry(...,textvariable=self.txp)
.....
self.txp.set(' ')

ist das nun so richtig ?
-- wn --
Benutzeravatar
numerix
User
Beiträge: 2696
Registriert: Montag 11. Juni 2007, 15:09

Für die, die das von dir zitierte Werk nicht haben, ist es nicht so einfach, hierzu vernünftig etwas zu sagen. Auch deine Code-Fetzen sind nicht das Gelbe vom Ei. Und Code-Tags gibt es auch ... Vielleicht könntest du künftig versuchen, deine Fragen/Probleme stärker so zu formulieren, dass klarer ist, was genau du möchtest.

Also: Das Beispiel von Weigend auf S. 417/418 ist an dieser Stelle falsch. In der Tat: Es bringt nix. Der Schlüsselwortparameter text ist für Entry-Widgets auch gar nicht definiert bzw. richtiger ausgedrückt, er bleibt wirkungslos.

Eine Möglichkeit ist die, die du fragmentarisch selbst darstellst, nämlich über Tkinter-Textvariablen. Die andere ist die über die delete()-Methode von Entrys. Dann sieht es so aus:

Code: Alles auswählen

import Tkinter as tk

def del_entry():
    entry.delete(0,"end") # funktioniert
    # entry.config(text="") # funktioniert nicht

root = tk.Tk()
entry = tk.Entry(root)
entry.insert(0,"Beispieltext")
button = tk.Button(root,text="Loeschen",command=del_entry)
entry.pack()
button.pack()
root.mainloop()
Im übrigen sollte man sich auch nicht von Weigend dazu verleiten lassen, Tkinter mittels Sternchenimport einzubinden.
Konrad Wenzel
User
Beiträge: 15
Registriert: Freitag 3. Oktober 2008, 17:19

Danke,für die schnelle Antwort
Für die Codierung muß ich mich entschuldigen, leider sind bei der Übertragung auch noch paar Tabs auf der Strecke geblieben
Was aber die Literaturangabe betrifft, so suchte ich einen Antwortenden, der das Buch hat und obendrein noch voll Wissen und Erfahrung geladen ist - und siehe,es war ein Treffer.
-- wn --
Benutzeravatar
cofi
Python-Forum Veteran
Beiträge: 4432
Registriert: Sonntag 30. März 2008, 04:16
Wohnort: RGFybXN0YWR0

Konrad Wenzel hat geschrieben:Für die Codierung muß ich mich entschuldigen, leider sind bei der Übertragung auch noch paar Tabs auf der Strecke geblieben
numerix meinte auch die [ code=py ](ohne Leerzeichen) - Tags auch erhältlich über den `Python'-Button beim Beitrag schreiben ;)
Antworten