[Tkinter-discuss] constraining toplevel windows to be on screen?
Russell E. Owen
rowen at uw.edu
Tue May 4 23:11:36 CEST 2010
I've received a bug report that my application's windows can appear off
screen. This happens when a user has two monitors and saves window
positions, then runs again later with only one monitor. Tkinter is
apparently perfectly happy to display toplevel windows entirely off
screen. At least on Mac OS X.
The solution I've thought of is to get the full screen size using
"root.wm_maxsize" and use that to constrain the geometry when restoring
the window positions.
However, it is messy code because tk geometry strings are complex: they
may be missing the extent, or the extent may be positive or negative.
So I was wondering if somebody had a simpler solution or had already
written code they would be willing to share (and, preferably, allow me
to redistribute in the RO package).
It would suffice to show part of each window on screen, though it would
be better to show the whole thing.
More information about the Tkinter-discuss