Package: gtk

Class gtk-fixed


gtk-container, gtk-widget, g-initially-unowned, gtk-buildable, g-object, common-lisp:standard-object, common-lisp:t

Documented Subclasses


Direct Slots



The gtk-fixed widget is a container which 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 GTK+ containers, but it results in broken applications. With gtk-fixed, the 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 GTK+, 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 cannot properly be mirrored in right-to-left languages such as Hebrew and Arabic. i. e. normally GTK+ will flip the interface to put labels to the right of the thing they label, but it cannot 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/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.

See also gtk-layout, which shares the ability to perform fixed positioning of child widgets and additionally adds custom drawing and scrollability.

Child Property Details

The x child property of type :int (Read / Write)
x position of child widget.
Default value: 0
The y child property of type :int (Read / Write)
y position of child widget.
Default value: 0

Inherited Slot Access Functions

See also