Mehrere Strings in textvariable von Label

Fragen zu Tkinter.
Antworten
danir23
User
Beiträge: 1
Registriert: Dienstag 16. Januar 2018, 14:45

Dienstag 16. Januar 2018, 14:49

Hallo,

ich habe leider nicht allzu viel Erfahrung mit Python und Tkinter, stehe deshalb vor einem (vermutlich sehr banalen) Problem.
Ich würde gerne ein Label mit einer Variable darstellen, die sich jede Sekunde ändert. Zusätzlich würde ich gerne ein "s" für Sekunde anhängen.

So sieht es bis jetzt aus:

Code: Alles auswählen

timeVar_ausgabe = str(timeVar)
        timeValue = tk.Label(self, textvariable=timeVar_ausgabe, anchor = tk.W, width=25)
Wie hänge ich an str(timeVar) nun ein "s" für Sekunden dran? Jeder Versuch bis jetzt führte dazu, dass nicht mehr angezeigt wird.

Vielen Dank für die Hilfe!
__deets__
User
Beiträge: 3077
Registriert: Mittwoch 14. Oktober 2015, 14:29

Dienstag 16. Januar 2018, 15:31

Strings baut man in Python mit der format-Methode zusammen:

Code: Alles auswählen

foo = "{}s".format(sekunden)
Aber du baust auch deine textvariable falsch aus. timeVar_ausgabe muss ein StringVar-Objekt sein. Und darauf kannst du dann mit set den neuen Wert setzen, und das Label aktualisiert sich automatisch.
Antworten