On Wed, 27 Apr 2005 11:33:49 -0700
"Russell E. Owen" <[EMAIL PROTECTED]> wrote:

> I'd was wondering if there was some fairly easy way to display text in a 
> Label such that it is is anchored on the west (short strings are against 
> the left edge), but too-long strings are truncated on the left. This 
> would be useful for displaying very long path names. It might be even 
> nicer to truncate the text in the middle, replacing the excess text with 
> ..., but truncating on the left would be fine.
> 
> I fear the only way is to use font metrics (using a tkFont object from 
> the tkFont module) and iteratively try to figure out what length of 
> string will fit. If so, it sounds messy. Hope I'm missing something.
> 
> -- Russell
> 

I've done something like that by simply checking the length of the string, like 
this:

label = Label(parent, width=40, anchor='w')
if len(labeltext) > 36:
    labeltext = '...%s' % labeltext[-33:]
label.configure(text=labeltext)

Maybe it's not perfect, but for me it worked fine.

Best regards

Michael
_______________________________________________
Tkinter-discuss mailing list
[email protected]
http://mail.python.org/mailman/listinfo/tkinter-discuss

Reply via email to