方法

GioMenuItemset_action_and_target_value

自 2.32 版起

声明 [源代码]

void
g_menu_item_set_action_and_target_value (
  GMenuItem* menu_item,
  const gchar* action,
  GVariant* target_value
)

描述 [源代码]

设置或取消设置 menu_item 的 “action” 和 “target” 属性。

如果 action 是 NULL,则“action”和“target”属性都会被取消设置(且 target_value 被忽略)。

如果 action 非空,则设置“action”属性。然后,如果 target_value 非空则将“target”属性设置为 target_value 的值,否则将取消设置。

正常菜单项(即:不是子菜单、部分或其他自定义项类型)通常应设置“action”属性以识别它们相关联的动作。动作的状态类型有助于确定菜单项的状态。关于动作的概述,请参阅 GActionGActionGroup

通常,点击菜单项将激活带有“target”属性作为动作调用参数的命名动作。如果未设置“target”属性,则动作无参数调用。

如果动作没有状态,则菜单项通常绘制为一个普通菜单项(即:没有额外的装饰)。

如果动作有一个布尔状态,则菜单项通常绘制为一个切换菜单项(即:带有勾选标记或等效指示)。当布尔状态为 TRUE 时,应将项目标记为“已切换”或“已勾选”。

如果动作有一个字符串状态,则菜单项通常绘制为一个单选菜单项(即:带有单选按钮或等效指示)。当字符串状态等于 target 属性的值时,应将项目标记为“选中”。

有关类似功能,请参阅 g_menu_item_set_action_and_target()g_menu_item_set_detailed_action(),这两个调用对于大多数使用来说可能更方便。

自 2.32 版起可用

参数

action

类型: const gchar*

该菜单项的动作名称。

参数可以是 NULL
该数据由方法的调用者拥有。
值是 NUL 结束的 UTF-8 字符串。
目标值

类型: GLib::Variant

用于作为动作目标的GLib::Variant

参数可以是 NULL
该数据由方法的调用者拥有。