gtk.Fixed — a container which allows you to position widgets at fixed coordinates
gtk.Fixed widget is a
container that can place child widgets at fixed positions and with fixed
sizes, given in pixels.
gtk.Fixed performs no
automatic layout management. For most applications, you should not use this
container! It keeps you from having to learn about the other PyGTK
containers, but it results in broken applications. With
following things will result in truncated text, overlapping widgets, and
other display bugs:
Themes, which may change widget sizes.
Fonts other than the one you used to write the app will of course change the size of widgets containing text; keep in mind that users may use a larger font because of difficulty reading the default, or they may be using Windows or the framebuffer port of PyGTK, where different fonts are available.
Translation of text into other languages changes its size. Also, display of non-English text will use a different font in many cases.
In addition, the fixed widget can't properly be mirrored in
right-to-left languages such as Hebrew and Arabic. i.e. normally PyGTK will
flip the interface to put labels to the right of the thing they label, but
it can't do that with
gtk.Fixed. So your
application will not be usable in right-to-left languages. Finally, fixed
positioning makes it kind of annoying to add and remove GUI elements, since
you have to reposition all the other elements. This is a long-term
maintenance problem for your application. If you know none of these things
are an issue for your application, and prefer the simplicity of
gtk.Fixed, by all
means use the widget. But you should be aware of the tradeoffs.
|a new fixed widget|
Creates a new
|the child widget being added*|
|the x position of the widget location|
|the y position of the widget location|
put() method adds the child widget
widget to the gtk.Fixed widget at the
location specified by
|the child widget|
|the new x position|
|the new y position|
move() method moves the child
widget specified by
widget to the location specified
set_has_window() method specifies
gtk.Fixed widget is
created with a separate
according to the value of
True the fixed
widget will be created with its own separate window. By default, the setting
False and the fixed will be created with no separate
method must be called while the
gtk.Fixed is not
realized, for instance, immediately after the window is created.