GtkApplicationWindow

说明 [src]

class Gtk.ApplicationWindow : Gtk.Window
  implements Gio.ActionGroup, Gio.ActionMap, Gtk.Accessible, Gtk.Buildable, Gtk.ConstraintTarget, Gtk.Native, Gtk.Root, Gtk.ShortcutManager {
  /* No available fields */
}

一个与 GtkApplication 集成的 GtkWindow 子类。

特别是,GtkApplicationWindow 可以处理一个应用程序菜单栏。

此类实现了 GActionGroupGActionMap 接口,以便您添加特定于窗口的操作,这些操作将由关联的 GtkApplication 与其应用程序范围的操作一起导出。特定于窗口的操作以 “win.” 前缀开头,而应用程序范围的操作以 “app.” 前缀开头。从菜单模型引用操作时,必须使用前缀名称来寻址操作。

请注意,放置在 GtkApplicationWindow 中的小组件如果实现了 GtkActionable 接口,也可以激活这些操作。

设置 GtkSettings:gtk-shell-shows-app-menuGtkSettings:gtk-shell-shows-menubar 告诉 GTK 桌面环境是否将应用程序菜单和菜单栏模型显示在应用程序外部的桌面外壳的一部分中。例如,在 OS X 上,两个菜单都将远程显示;在 Windows 上则都不会显示。

如果桌面环境不显示菜单栏,则 GtkApplicationWindow 会自动为其显示一个菜单栏。此行为可以使用 GtkApplicationWindow:show-menubar 属性进行覆盖。如果桌面环境不显示应用程序菜单,那么它会自动包含在菜单栏中,或者包含在窗口的客户端装饰中。

有关 GtkBuilder 用于菜单模型的 XML 语言的信息,请参见 GtkPopoverMenu

另请参见:gtk_application_set_menubar()

带菜单栏的 GtkApplicationWindow

以下代码示例显示了如何使用在 GtkApplication 上定义的菜单栏设置 GtkApplicationWindow

GtkApplication *app = gtk_application_new ("org.gtk.test", 0);

GtkBuilder *builder = gtk_builder_new_from_string (
    "<interface>"
    "  <menu id='menubar'>"
    "    <submenu>"
    "      <attribute name='label' translatable='yes'>_Edit</attribute>"
    "      <item>"
    "        <attribute name='label' translatable='yes'>_Copy</attribute>"
    "        <attribute name='action'>win.copy</attribute>"
    "      </item>"
    "      <item>"
    "        <attribute name='label' translatable='yes'>_Paste</attribute>"
    "        <attribute name='action'>win.paste</attribute>"
    "      </item>"
    "    </submenu>"
    "  </menu>"
    "</interface>",
    -1);

GMenuModel *menubar = G_MENU_MODEL (gtk_builder_get_object (builder, "menubar"));
gtk_application_set_menubar (GTK_APPLICATION (app), menubar);
g_object_unref (builder);

// ...

GtkWidget *window = gtk_application_window_new (app);

层次结构

hierarchy this GtkApplicationWindow implements_0 GActionGroup this--implements_0 implements_1 GActionMap this--implements_1 implements_2 GtkAccessible this--implements_2 implements_3 GtkBuildable this--implements_3 implements_4 GtkConstraintTarget this--implements_4 implements_5 GtkNative this--implements_5 implements_6 GtkRoot this--implements_6 implements_7 GtkShortcutManager this--implements_7 ancestor_0 GtkWindow ancestor_0--this ancestor_1 GtkWidget ancestor_1--ancestor_0 ancestor_2 GInitiallyUnowned ancestor_2--ancestor_1 ancestor_3 GObject ancestor_3--ancestor_2

构造函数

gtk_application_window_new

创建新的 GtkApplicationWindow

实例方法

gtk_application_window_get_help_overlay

获取与 `window` 关联的 `GtkShortcutsWindow`。

gtk_application_window_get_id

返回窗口的唯一 ID

gtk_application_window_get_show_menubar

返回窗口是否会根据需要显示应用程序菜单和菜单栏的菜单栏。

gtk_application_window_set_help_overlay

将快捷方式窗口与应用程序窗口关联。

gtk_application_window_set_show_menubar

设置窗口是否会根据需要显示应用程序菜单和菜单栏的菜单栏。

GtkWindow(55)继承的方法

有关方法的完整列表,请参阅 GtkWindow

GtkWidget(162)继承的方法

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

GObject(43)继承的方法

有关方法的完整列表,请参阅 GObject

GActionGroup(14)继承的方法
g_action_group_action_added

发送 `action_group` 上的 `GActionGroup::action-added` 信号。

g_action_group_action_enabled_changed

发送 `action_group` 上的 `GActionGroup::action-enabled-changed` 信号。

g_action_group_action_removed

发送 `action_group` 上的 `GActionGroup::action-removed` 信号。

g_action_group_action_state_changed

发送 `action_group` 上的 `GActionGroup::action-state-changed` 信号。

g_action_group_activate_action

激活 `action_group` 中的命名操作。

g_action_group_change_action_state

请求将 `action_group` 中指定名称的操作状态更改为 `value`。

g_action_group_get_action_enabled

检查 `action_group` 中的指定名称的操作当前是否已启用。

g_action_group_get_action_parameter_type

查询激活 `action_group` 中的指定名称的操作时必须给出的参数的类型。

g_action_group_get_action_state

查询 `action_group` 中的指定名称的操作的当前状态。

g_action_group_get_action_state_hint

请求 `action_group` 中指定名称的操作状态的有效值范围提示。

g_action_group_get_action_state_type

查询 `action_group` 中的指定名称的操作状态的类型。

g_action_group_has_action

检查 `action_group` 中是否存在指定名称的操作。

g_action_group_list_actions

列出 `action_group` 中包含的操作。

g_action_group_query_action

查询 `action_group` 中的指定名称操作的所有方面。

GActionMap(5)继承的方法
g_action_map_add_action

将操作添加到 `action_map`。

g_action_map_add_action_entries

用于创建多个 `GSimpleAction` 实例并将其添加到 `GActionMap` 的便捷函数。

g_action_map_lookup_action

在 `action_map` 中查找名称为 `action_name` 的操作。

g_action_map_remove_action

从操作映射中移除指定的名称操作。

g_action_map_remove_action_entries

从 `GActionMap` 中移除操作。这是作为 `g_action_map_add_action_entries()` 的反向操作。

GtkAccessible (19) 继承的方法
gtk_accessible_announce

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

自:4.14

gtk_accessible_get_accessible_parent

检索辅助对象的可访问父级。

自:4.10

gtk_accessible_get_accessible_role

检索辅助对象的辅助角色。

gtk_accessible_get_at_context

检索给定辅助对象的实现。

自:4.10

gtk_accessible_get_bounds

查询此辅助对象的坐标和尺寸。

自:4.10

gtk_accessible_get_first_accessible_child

检索辅助对象的第一个辅助子级。

自:4.10

gtk_accessible_get_next_accessible_sibling

检索辅助对象的下一个辅助同级。

自:4.10

gtk_accessible_get_platform_state

查询平台状态,例如焦点。

自:4.10

gtk_accessible_reset_property

将辅助属性重置为其默认值。

gtk_accessible_reset_relation

将辅助关系重置为其默认值。

gtk_accessible_reset_state

将辅助状态重置为其默认值。

gtk_accessible_set_accessible_parent

设置辅助对象的父级和同级。

自:4.10

gtk_accessible_update_next_accessible_sibling

更新下一个辅助同级。

自:4.10

gtk_accessible_update_property

更新辅助属性的列表。

gtk_accessible_update_property_value

更新辅助属性的数组。

gtk_accessible_update_relation

更新辅助关系的列表。

gtk_accessible_update_relation_value

更新辅助关系的数组。

gtk_accessible_update_state

更新辅助状态的列表。

gtk_accessible_update_state_value

更新辅助状态的数组。

GtkBuildable 继承的方法 (1)
gtk_buildable_get_buildable_id

获取 buildable 对象的ID

GtkNative 继承的方法 (5)
gtk_native_get_renderer

返回用于此 GtkNative 的渲染器。

gtk_native_get_surface

返回此 GtkNative 的表面。

gtk_native_get_surface_transform

检索 self 的表面变换。

gtk_native_realize

实现 GtkNative

gtk_native_unrealize

取消实现 GtkNative

GtkRoot 继承的方法 (3)
gtk_root_get_display

返回此 GtkRoot 所在的显示器。

gtk_root_get_focus

检索根中当前聚焦的小部件。

gtk_root_set_focus

如果 focus 不是当前焦点小部件,并且是可聚焦的,则将其设置为根的焦点小部件。

属性

Gtk.ApplicationWindow:show-menubar

如果此属性为 true,则窗口将显示菜单栏,除非桌面外壳显示它。

GtkWindow 继承的属性 (25)
Gtk.Window:application

与该窗口关联的 GtkApplication

Gtk.Window:child

子窗口。

Gtk.Window:decorated

窗口是否应有边框(也称为“修饰”)。

Gtk.Window:default-height

窗口的默认高度。

Gtk.Window:default-widget

默认窗口。

Gtk.Window:default-width

窗口的默认宽度。

Gtk.Window:deletable

窗口边框是否应有一个关闭按钮。

Gtk.Window:destroy-with-parent

如果此窗口应在父窗口被销毁时被销毁。

Gtk.Window:display

将显示此窗口的显示器。

Gtk.Window:focus-visible

此窗口中当前是否可见“焦点矩形”。

Gtk.Window:focus-widget

焦点窗口。

Gtk.Window:fullscreened

窗口是否为全屏。

Gtk.Window:handle-menubar-accel

窗口框架是否应处理 F10 以激活菜单栏。

自 4.2 起

Gtk.Window:hide-on-close

如果用户单击关闭按钮,是否应该隐藏该窗口。

Gtk.Window:icon-name

指定要作为窗口图标使用的主题图标的名称。

Gtk.Window:is-active

顶级窗口是否是当前活动窗口。

Gtk.Window:maximized

窗口是否已最大化。

Gtk.Window:mnemonics-visible

助记符当前是否在此窗口中可见。

Gtk.Window:modal

如果为真,则窗口是模态的。

Gtk.Window:resizable

如果为真,则用户可以调整窗口大小。

Gtk.Window:startup-id

一个只写属性,用于设置窗口的启动通知标识符。

Gtk.Window:suspended

窗口是否已暂停。

自 4.12 起

Gtk.Window:title

窗口的标题。

Gtk.Window:titlebar

标题栏小部件。

自 4.6 起

Gtk.Window:transient-for

窗口的瞬态父级。

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

小部件或其任何后代是否可以接受输入焦点。

Gtk.Widget:can-target

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

Gtk.Widget:css-classes

应用于此小部件的 css 类的列表。

Gtk.Widget:css-name

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

Gtk.Widget:cursor

widget 使用的光标。

Gtk.Widget:focus-on-click

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

Gtk.Widget:focusable

此小部件本身是否将接受输入焦点。

Gtk.Widget:halign

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

Gtk.Widget:has-default

小部件是否是默认小部件。

Gtk.Widget:has-focus

小部件是否具有输入焦点。

Gtk.Widget:has-tooltip

widget 上启用或禁用对 GtkWidget::query-tooltip 信号的发射。

Gtk.Widget:height-request

覆盖小部件的高度请求。

Gtk.Widget:hexpand

是否横向展开。

Gtk.Widget:hexpand-set

是否使用 hexpand 属性。

Gtk.Widget:layout-manager

要使用的 GtkLayoutManager 实例来计算小部件的首选大小,并分配其子级。

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:可见性

控件是否可见。

Gtk.Widget:宽度请求

针对控件的宽度请求进行覆盖。

GtkAccessible (1) 继承的属性
GtkAccessible:辅助角色

给定 GtkAccessible 实现的辅助角色。

信号

GtkWindow (5) 继承的信号
GtkWindow::activate-default

当用户激活默认控件时发出。

GtkWindow::activate-focus

当用户激活 window 当前获得焦点的控件时发出。

GtkWindow::close-request

当用户单击窗口的关闭按钮时发出。

GtkWindow::enable-debugging

当用户启用或禁用交互式调试时发出。

GtkWindow::keys-changed

当与窗口相关联的加速器或记忆符集发生改变时发出。

已弃用: 4.10 

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 信号。

GActionGroup (4) 继承的信号
GActionGroup::action-added

信号通知一个新操作刚刚添加到组中。此信号在操作已添加且现在可见后发出。

GActionGroup::action-enabled-changed

信号通知已命名的操作的启用状态已发生改变。

GActionGroup::action-removed

信号通知一个操作即将从组中移除。此信号在操作被移除之前发出,因此操作仍然可见且可以从信号处理程序中查询。

GActionGroup::action-state-changed

信号通知已命名的操作的状态已发生改变。

类结构

struct GtkApplicationWindowClass {
  GtkWindowClass parent_class;
  
}

没有描述可用。

类成员
parent_class: GtkWindowClass

父类。