in reply to Height of a label widget in Tk

In general you can't trust the values of attributes like this until the widget (or window) is displayed. The $w->waitVisibility method allows you to let the widget get displayed and then check matters of interest.

Inside of $w->waitVisibility Tk does updates and processes other events until the widget receives a Visibility event. If you want to handle this kind of thing asynchronously you could look at hooking into that event yourself.