Seite 1 von 1

Entrygröße an Inhalt anpassen

Verfasst: Samstag 10. April 2010, 22:19
von Pascal
Hallo,

in einem Programm verwende ich ein Entry, dessen Inhalt von ganz unterschiedlicher Länge sein kann. Dieser soll problemlos zu lesen sein ohne dass ich die Breite des Entrys verändern muss.

Mein Vorschlagt sieht bisher so aus:

Code: Alles auswählen

import Tkinter as tk


def anpassen(e):
    zeichen = len(entry.get())
    breite = entry.cget('width')
    print 'Länge des Textes:', zeichen
    print 'Breite des Entrys: ', breite
    if zeichen > breite:
        print entry.cget('font')
        entry.config(font=('Arial', int(entry.cget('font').split()[-1])-1), width=breite+3)
    print '\n\n'
    
    

win = tk.Tk()


entry = tk.Entry(win, font=('Arial', 12))
entry.pack(padx=50, pady=50)

entry.bind('<1>', anpassen)

win.mainloop()
Ich bezweifle, dass das die optimale Lösung ist.
Wie kann man das ganze besser machen?