Gtk固定

说明 [src]

class Gtk.Fixed : Gtk.Widget
  implements Gtk.Accessible, Gtk.Buildable, Gtk.ConstraintTarget {
  /* No available fields */
}

GtkFixed 将其子小组件放置在固定位置并具有固定大小。

GtkFixed 不执行自动布局管理。

对于大多数应用程序,都不应使用此容器!它可以让您不必了解其他 GTK 容器,但会导致应用程序崩溃。使用 GtkFixed,以下情况会导致文本被截断、小组件重叠以及其他显示错误:

  • 主题,它可能更改小组件大小。

  • 当然,除了您用来编写应用程序的字体之外,其他字体会更改包含文本的小组件的大小;请记住,用户可能使用更大的字体,因为他们难以阅读默认字体,或者他们可能使用提供了不同字体不同的 OS

  • 文本翻译成其他语言会改变其大小。同样,在许多情况下,非英语文本的显示将使用不同的字体。

此外,GtkFixed 不关注文本方向,因此如果您的应用程序在希伯来语或阿拉伯语等从右到左的语言下运行,则可能会产生意外的结果。也就是说:通常 GTK 会根据文本方向适当地对容器进行排序,例如在使用 RTL 语言时将标签放在它们标记的事物的右侧,但它无法使用 GtkFixed 来实现这一点。因此,如果您需要根据文本方向重新排列小组件,则需要手动检测文本方向并相应调整子小组件位置。

最后,固定定位使得添加/移除 UI 元素变得有点烦人,因为您必须重新定位所有其他元素。这是一个长期存在的应用程序维护问题。

如果您知道对于您的应用程序来说这些都不是问题,并且更喜欢 GtkFixed 的简单性,那么可以随时使用该小组件。但您应该意识到这种权衡。

层次结构

hierarchy this GtkFixed implements_0 GtkAccessible this--implements_0 implements_1 GtkBuildable this--implements_1 implements_2 GtkConstraintTarget this--implements_2 ancestor_0 GtkWidget ancestor_0--this ancestor_1 GInitiallyUnowned ancestor_1--ancestor_0 ancestor_2 GObject ancestor_2--ancestor_1

构造函数

gtk_fixed_new

创建一个新的 GtkFixed

实例方法

gtk_fixed_get_child_position

GtkFixed 中检索给定子 GtkWidget 的平移变换。

gtk_fixed_get_child_transform

检索使用 gtk_fixed_set_child_transform() 设置 widget 的变换。

gtk_fixed_move

设置 GtkFixed 的子 widget 到给定的 xy 坐标的平移变换。

gtk_fixed_put

GtkFixed 以给定位置添加一个 widget

gtk_fixed_remove

fixed 中移除一个子元素。

gtk_fixed_set_child_transform

设置 widget 的变换。

GtkWidget 继承的方法 (162)

有关方法的完整列表,请参见 GtkWidget

GObject 继承的方法 (43)

完整方法列表请参阅 GObject

GtkAccessible 继承的方法 (19)
gtk_accessible_announce

请求用户的屏幕阅读器播报给定的 message。

自:4.14

gtk_accessible_get_accessible_parent

检索一个无障碍 object 的无障碍父级。

自:4.10

gtk_accessible_get_accessible_role

检索一个无障碍 object 的无障碍角色。

gtk_accessible_get_at_context

检索给定无障碍 object 的实现。

自:4.10

gtk_accessible_get_bounds

查询此 accessible 的坐标和维度。

自:4.10

gtk_accessible_get_first_accessible_child

检索一个无障碍 object 的第一个无障碍子级。

自:4.10

gtk_accessible_get_next_accessible_sibling

检索一个无障碍 object 的下一个无障碍兄弟级。

自:4.10

gtk_accessible_get_platform_state

查询平台状态,如 focus。

自:4.10

gtk_accessible_reset_property

将无障碍属性重置为其默认 value。

gtk_accessible_reset_relation

将无障碍关系重置为其默认 value。

gtk_accessible_reset_state

将无障碍状态重置为其默认 value。

gtk_accessible_set_accessible_parent

设置一个无障碍 object 的父级和兄弟级。

自:4.10

gtk_accessible_update_next_accessible_sibling

更新下一个无障碍 sibling。

自:4.10

gtk_accessible_update_property

更新无障碍 properties 的列表。

gtk_accessible_update_property_value

更新无障碍 properties 的数组。

gtk_accessible_update_relation

更新无障碍 relations 的列表。

gtk_accessible_update_relation_value

更新无障碍 relations 的数组。

gtk_accessible_update_state

更新无障碍 states 的列表。

gtk_accessible_update_state_value

更新无障碍 states 的数组。

GtkBuildable 继承的方法 (1)
gtk_buildable_get_buildable_id

获取 buildable object 的 ID

属性

GtkWidget 继承的属性 (34)
Gtk.Widget:can-focus

小部件或其任何子项是否可以接受输入 focus。

Gtk.Widget:can-target

小部件是否可以接收指针 events。

Gtk.Widget:css-classes

应用于此 widget 的 css 类的列表。

Gtk.Widget:css-name

此小部件在 CSS 树中的名称。

Gtk.Widget:cursor

widget 用到的光标。

Gtk.Widget:focus-on-click

用鼠标单击小部件时,小部件是否应获取焦点 mouse。

Gtk.Widget:focusable

此小部件本身是否会接受输入 focus。

Gtk.Widget:halign

如果小部件获得额外 space,如何分配水平空间。

Gtk.Widget:has-default

小部件是否是默认 widget。

Gtk.Widget:has-focus

小部件是否具有输入 focus。

Gtk.Widget:has-tooltip

启用或禁用在 widget 上发出 GtkWidget::query-tooltip 信号。

Gtk.Widget:height-request

替换 widget 的高度请求。

Gtk.Widget:hexpand

是否水平 expand。

Gtk.Widget:hexpand-set

是否使用 hexpand 属性。

Gtk.Widget:layout-manager

GtkLayoutManager 实例用于计算小部件的首选大小并分配其 children。

Gtk.Widget:margin-bottom

小部件底部边缘距。

Gtk.Widget:margin-end

小部件末端边缘距(水平方向)。

Gtk.Widget:margin-start

小部件起始位置边缘距(水平方向)。

Gtk.Widget:margin-top

小部件顶端边缘距。

Gtk.Widget:name

小部件名称。

Gtk.Widget:opacity

小部件的请求不透明度。

Gtk.Widget:overflow

如何处理小部件内容区域之外的内容。

Gtk.Widget:parent

该小部件的父小部件。

Gtk.Widget:receives-default

当小部件获取焦点时,它是否会接收默认操作。

Gtk.Widget:root

包含此小部件的小部件树的 GtkRoot 小部件。

Gtk.Widget:scale-factor

小部件的缩放因子。

Gtk.Widget:sensitive

小部件是否响应输入。

Gtk.Widget:tooltip-markup

将工具提示的文本设置为给定的字符串,该字符串使用 Pango 标记标记。

Gtk.Widget:tooltip-text

将工具提示的文本设置为给定的字符串。

Gtk.Widget:valign

如果小部件获取了额外的空间,如何分配垂直空间。

Gtk.Widget:vexpand

是否垂直扩展。

Gtk.Widget:vexpand-set

是否使用 vexpand 属性。

Gtk.Widget:visible

小部件是否可见。

Gtk.Widget:width-request

小部件的宽度请求的覆盖。

GtkAccessible (1)继承的属性
GtkAccessible:accessible-role

给定 GtkAccessible 实现的无障碍角色。

信号

GtkWidget (13)继承的信号
GtkWidget::destroy

所有持有小部件引用者的信号都应释放其持有的引用。

GtkWidget::direction-changed

小部件的文本方向发生变化时发出。

GtkWidget::hide

widget 隐藏时发出。

GtkWidget::keynav-failed

如果键盘导航失败,则发出。

GtkWidget::map

widget 即将映射时发出。

GtkWidget::mnemonic-activate

小部件通过助记符激活时发出。

GtkWidget::move-focus

焦点移动时发出。

GtkWidget::query-tooltip

小部件的工具提示即将显示时发出。

GtkWidget::realize

widgetGdkSurface 关联时发出。

GtkWidget::show

widget 显示时发出。

GtkWidget::state-flags-changed

小部件状态发生变化时发出。

GtkWidget::unmap

widget 即将取消映射时发出。

GtkWidget::unrealize

widget 关联的 GdkSurface 销毁时发出。

GObject (1)继承的信号
GObject::notify

当对象的其中一个属性通过 g_object_set_property(),g_object_set() 等设置其值时,notify 信号在对象上发出。

类结构

struct GtkFixedClass {
  GtkWidgetClass parent_class;
  
}

没有可用的说明。

类成员
parent_class: GtkWidgetClass

没有可用的说明。