📄 gtkfixed.html
字号:
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html><head><meta http-equiv="Content-Type" content="text/html; charset=US-ASCII"><title>GtkFixed</title><meta name="generator" content="DocBook XSL Stylesheets V1.73.2"><link rel="start" href="index.html" title="GTK+ Reference Manual"><link rel="up" href="LayoutContainers.html" title="Layout Containers"><link rel="prev" href="GtkVButtonBox.html" title="GtkVButtonBox"><link rel="next" href="GtkHPaned.html" title="GtkHPaned"><meta name="generator" content="GTK-Doc V1.9 (XML mode)"><link rel="stylesheet" href="style.css" type="text/css"><link rel="part" href="gtk.html" title="Part I. GTK+ Overview"><link rel="part" href="gtkbase.html" title="Part II. GTK+ Core Reference"><link rel="part" href="gtkobjects.html" title="Part III. GTK+ Widgets and Objects"><link rel="chapter" href="ch01.html" title="Object Hierarchy"><link rel="chapter" href="ch02.html" title="Widget Gallery"><link rel="chapter" href="WindowWidgets.html" title="Windows"><link rel="chapter" href="DisplayWidgets.html" title="Display Widgets"><link rel="chapter" href="ButtonWidgets.html" title="Buttons and Toggles"><link rel="chapter" href="NumericEntry.html" title="Numeric/Text Data Entry"><link rel="chapter" href="TextWidgetObjects.html" title="Multiline Text Editor"><link rel="chapter" href="TreeWidgetObjects.html" title="Tree, List and Icon Grid Widgets"><link rel="chapter" href="MenusAndCombos.html" title="Menus, Combo Box, Toolbar"><link rel="chapter" href="Actions.html" title="Action-based menus and toolbars"><link rel="chapter" href="SelectorWidgets.html" title="Selectors (File/Font/Color/Input Devices)"><link rel="chapter" href="LayoutContainers.html" title="Layout Containers"><link rel="chapter" href="Ornaments.html" title="Ornaments"><link rel="chapter" href="ScrollingWidgets.html" title="Scrolling"><link rel="chapter" href="Printing.html" title="Printing"><link rel="chapter" href="MiscObjects.html" title="Miscellaneous"><link rel="chapter" href="AbstractObjects.html" title="Abstract Base Classes"><link rel="chapter" href="PlugSocket.html" title="Cross-process Embedding"><link rel="chapter" href="SpecialObjects.html" title="Special-purpose features"><link rel="chapter" href="RecentDocuments.html" title="Recently Used Documents"><link rel="chapter" href="Builder.html" title="Interface builder"><link rel="chapter" href="DeprecatedObjects.html" title="Deprecated"><link rel="part" href="migrating.html" title="Part IV. Migrating from Previous Versions of GTK+"><link rel="chapter" href="gtk-migrating-checklist.html" title="Migration Checklist"><link rel="chapter" href="gtk-migrating-GtkFileChooser.html" title="Migrating from GtkFileSelection to GtkFileChooser"><link rel="chapter" href="gtk-migrating-GtkAction.html" title="Migrating from old menu and toolbar systems to GtkAction"><link rel="chapter" href="gtk-migrating-GtkComboBox.html" title="Migrating from GtkOptionMenu and GtkCombo to GtkComboBox and GtkComboBoxEntry"><link rel="chapter" href="gtk-migrating-GtkIconView.html" title="Migrating from GnomeIconList to GtkIconView"><link rel="chapter" href="gtk-migrating-GtkAboutDialog.html" title="Migrating from GnomeAbout to GtkAboutDialog"><link rel="chapter" href="gtk-migrating-GtkColorButton.html" title="Migrating from GnomeColorPicker to GtkColorButton"><link rel="chapter" href="gtk-migrating-GtkAssistant.html" title="Migrating from GnomeDruid to GtkAssistant"><link rel="chapter" href="gtk-migrating-GtkRecentChooser.html" title="Migrating from EggRecent to GtkRecentChooser"><link rel="chapter" href="gtk-migrating-GtkLinkButton.html" title="Migrating from GnomeHRef to GtkLinkButton"><link rel="chapter" href="gtk-migrating-GtkBuilder.html" title="Migrating from libglade to GtkBuilder"><link rel="chapter" href="gtk-migrating-tooltips.html" title="Migrating from GtkTooltips to GtkTooltip"><link rel="part" href="pt05.html" title="Part V. GTK+ Tools"><link rel="glossary" href="glossary.html" title="Glossary"><link rel="index" href="ix01.html" title="Index"><link rel="index" href="ix02.html" title="Index of deprecated symbols"><link rel="index" href="ix03.html" title="Index of new symbols in 2.2"><link rel="index" href="ix04.html" title="Index of new symbols in 2.4"><link rel="index" href="ix05.html" title="Index of new symbols in 2.6"><link rel="index" href="ix06.html" title="Index of new symbols in 2.8"><link rel="index" href="ix07.html" title="Index of new symbols in 2.10"><link rel="index" href="ix08.html" title="Index of new symbols in 2.12"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle"><td><a accesskey="p" href="GtkVButtonBox.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td><td><a accesskey="u" href="LayoutContainers.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td><td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td><th width="100%" align="center">GTK+ Reference Manual</th><td><a accesskey="n" href="GtkHPaned.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td></tr><tr><td colspan="5" class="shortcuts"><nobr><a href="#id4067548" class="shortcut">Top</a>  |  <a href="#id4067875" class="shortcut">Description</a>  |  <a href="#id4067741" class="shortcut">Object Hierarchy</a>  |  <a href="#id4067795" class="shortcut">Implemented Interfaces</a>  |  <a href="#id4067825" class="shortcut">Child Properties</a></nobr></td></tr></table><div class="refentry" lang="en"><a name="GtkFixed"></a><div class="titlepage"></div><div class="refnamediv"><table width="100%"><tr><td valign="top"><h2><a name="id4067548"></a><span class="refentrytitle">GtkFixed</span></h2><p>GtkFixed — A container which allows you to position widgets at fixed coordinates</p></td><td valign="top" align="right"></td></tr></table></div><div class="refsynopsisdiv"><h2>Synopsis</h2><pre class="synopsis">#include <gtk/gtk.h> <a class="link" href="GtkFixed.html#GtkFixed-struct">GtkFixed</a>; <a class="link" href="GtkFixed.html#GtkFixedChild">GtkFixedChild</a>;<a class="link" href="GtkWidget.html" title="GtkWidget">GtkWidget</a>* <a class="link" href="GtkFixed.html#gtk-fixed-new">gtk_fixed_new</a> (void);void <a class="link" href="GtkFixed.html#gtk-fixed-put">gtk_fixed_put</a> (<a class="link" href="GtkFixed.html" title="GtkFixed">GtkFixed</a> *fixed, <a class="link" href="GtkWidget.html" title="GtkWidget">GtkWidget</a> *widget, <ahref="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint">gint</a> x, <ahref="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint">gint</a> y);void <a class="link" href="GtkFixed.html#gtk-fixed-move">gtk_fixed_move</a> (<a class="link" href="GtkFixed.html" title="GtkFixed">GtkFixed</a> *fixed, <a class="link" href="GtkWidget.html" title="GtkWidget">GtkWidget</a> *widget, <ahref="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint">gint</a> x, <ahref="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint">gint</a> y);<ahref="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean">gboolean</a> <a class="link" href="GtkFixed.html#gtk-fixed-get-has-window">gtk_fixed_get_has_window</a> (<a class="link" href="GtkFixed.html" title="GtkFixed">GtkFixed</a> *fixed);void <a class="link" href="GtkFixed.html#gtk-fixed-set-has-window">gtk_fixed_set_has_window</a> (<a class="link" href="GtkFixed.html" title="GtkFixed">GtkFixed</a> *fixed, <ahref="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean">gboolean</a> has_window);</pre></div><div class="refsect1" lang="en"><a name="id4067741"></a><h2>Object Hierarchy</h2><pre class="synopsis"> <ahref="/usr/share/gtk-doc/html/gobject/gobject-The-Base-Object-Type.html#GObject">GObject</a> +----<ahref="/usr/share/gtk-doc/html/gobject/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a> +----<a class="link" href="GtkObject.html" title="GtkObject">GtkObject</a> +----<a class="link" href="GtkWidget.html" title="GtkWidget">GtkWidget</a> +----<a class="link" href="GtkContainer.html" title="GtkContainer">GtkContainer</a> +----GtkFixed</pre></div><div class="refsect1" lang="en"><a name="id4067795"></a><h2>Implemented Interfaces</h2><p>GtkFixed implements AtkImplementorIface and <a class="link" href="gtk-gtkbuildable.html#GtkBuildable">GtkBuildable</a>.</p></div><div class="refsect1" lang="en"><a name="id4067825"></a><h2>Child Properties</h2><pre class="synopsis"> "<a class="link" href="GtkFixed.html#GtkFixed--x">x</a>" <ahref="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint">gint</a> : Read / Write "<a class="link" href="GtkFixed.html#GtkFixed--y">y</a>" <ahref="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint">gint</a> : Read / Write</pre></div><div class="refsect1" lang="en"><a name="id4067875"></a><h2>Description</h2><p>The <a class="link" href="GtkFixed.html" title="GtkFixed"><span class="type">GtkFixed</span></a> widget is a container which can place child widgets at fixedpositions and with fixed sizes, given in pixels. <a class="link" href="GtkFixed.html" title="GtkFixed"><span class="type">GtkFixed</span></a> performs noautomatic layout management.</p><p>For most applications, you should not use this container! It keepsyou from having to learn about the other GTK+ containers, but itresults in broken applications.With <a class="link" href="GtkFixed.html" title="GtkFixed"><span class="type">GtkFixed</span></a>, the following things will result in truncated text, overlapping widgets, and other display bugs:</p><div class="itemizedlist"><ul type="disc"><li><p>Themes, which may change widget sizes.</p></li><li><p>Fonts other than the one you used to write the app will ofcourse change the size of widgets containing text; keep in mind thatusers may use a larger font because of difficulty reading the default,or they may be using Windows or the framebuffer port of GTK+, wheredifferent fonts are available.</p></li><li><p>Translation of text into other languages changes its size. Also,display of non-English text will use a different font in many cases.</p></li></ul></div><p></p><p>In addition, the fixed widget can't properly be mirrored inright-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 theylabel, but it can't do that with <a class="link" href="GtkFixed.html" title="GtkFixed"><span class="type">GtkFixed</span></a>. So your application will not be usable in right-to-left languages.</p><p>Finally, fixed positioning makes it kind of annoying to add/remove GUIelements, since you have to reposition all the other elements. This isa long-term maintenance problem for your application.</p><p>If you know none of these things are an issue for your application,and prefer the simplicity of <a class="link" href="GtkFixed.html" title="GtkFixed"><span class="type">GtkFixed</span></a>, by all means use thewidget. But you should be aware of the tradeoffs.</p></div><div class="refsect1" lang="en"><a name="id4067991"></a><h2>Details</h2><div class="refsect2" lang="en"><a name="id4068001"></a><h3><a name="GtkFixed-struct"></a>GtkFixed</h3><a class="indexterm" name="id4068015"></a><pre class="programlisting">typedef struct _GtkFixed GtkFixed;</pre><p>The <a class="link" href="GtkFixed.html#GtkFixed-struct"><span class="type">GtkFixed</span></a> struct contains the following fields.(These fields should be considered read-only. They should never be set byan application.)</p><div class="informaltable"><table width="100%" border="0"><colgroup><col><col></colgroup><tbody><tr><td><ahref="/usr/share/gtk-doc/html/glib/glib-Doubly-Linked-Lists.html#GList"><span class="type">GList</span></a> *children;</td><td>a list of <a class="link" href="GtkFixed.html#GtkFixedChild"><span class="type">GtkFixedChild</span></a> elements, containing the child widgets andtheir positions.</td></tr></tbody></table></div><p></p></div><hr><div class="refsect2" lang="en"><a name="id4068093"></a><h3><a name="GtkFixedChild"></a>GtkFixedChild</h3><a class="indexterm" name="id4068106"></a><pre class="programlisting">typedef struct { GtkWidget *widget; gint x; gint y;} GtkFixedChild;</pre><p>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -