mirror of
https://github.com/godotengine/godot-docs-l10n.git
synced 2026-01-05 14:10:19 +03:00
1336 lines
110 KiB
ReStructuredText
1336 lines
110 KiB
ReStructuredText
:github_url: hide
|
||
|
||
.. DO NOT EDIT THIS FILE!!!
|
||
.. Generated automatically from Godot engine sources.
|
||
.. Generator: https://github.com/godotengine/godot/tree/master/doc/tools/make_rst.py.
|
||
.. XML source: https://github.com/godotengine/godot/tree/master/doc/classes/NativeMenu.xml.
|
||
|
||
.. _class_NativeMenu:
|
||
|
||
NativeMenu
|
||
==========
|
||
|
||
**继承:** :ref:`Object<class_Object>`
|
||
|
||
操作系统原生菜单的服务器接口。
|
||
|
||
.. rst-class:: classref-introduction-group
|
||
|
||
描述
|
||
----
|
||
|
||
**NativeMenu** 处理对 OS 原生全局菜单栏和弹出菜单的低级访问。
|
||
|
||
\ **注意:**\ 这是低级 API,请考虑使用将 :ref:`MenuBar.prefer_global_menu<class_MenuBar_property_prefer_global_menu>` 设置为 ``true`` 的 :ref:`MenuBar<class_MenuBar>`\ ,以及将 :ref:`PopupMenu.prefer_native_menu<class_PopupMenu_property_prefer_native_menu>` 设置为 ``true`` 的 :ref:`PopupMenu<class_PopupMenu>`\ 。
|
||
|
||
要创建一个菜单,请使用 :ref:`create_menu<class_NativeMenu_method_create_menu>`\ ,使用 ``add_*_item`` 方法添加菜单项。要移除一个菜单,请使用 :ref:`free_menu<class_NativeMenu_method_free_menu>`\ 。
|
||
|
||
::
|
||
|
||
var menu
|
||
|
||
func _menu_callback(item_id):
|
||
if item_id == "ITEM_CUT":
|
||
cut()
|
||
elif item_id == "ITEM_COPY":
|
||
copy()
|
||
elif item_id == "ITEM_PASTE":
|
||
paste()
|
||
|
||
func _enter_tree():
|
||
# 创建新菜单并添加项目:
|
||
menu = NativeMenu.create_menu()
|
||
NativeMenu.add_item(menu, "Cut", _menu_callback, Callable(), "ITEM_CUT")
|
||
NativeMenu.add_item(menu, "Copy", _menu_callback, Callable(), "ITEM_COPY")
|
||
NativeMenu.add_separator(menu)
|
||
NativeMenu.add_item(menu, "Paste", _menu_callback, Callable(), "ITEM_PASTE")
|
||
|
||
func _on_button_pressed():
|
||
# 在鼠标位置显示弹出菜单:
|
||
NativeMenu.popup(menu, DisplayServer.mouse_get_position())
|
||
|
||
func _exit_tree():
|
||
# 当不再需要时移除菜单:
|
||
NativeMenu.free_menu(menu)
|
||
|
||
.. rst-class:: classref-reftable-group
|
||
|
||
方法
|
||
----
|
||
|
||
.. table::
|
||
:widths: auto
|
||
|
||
+-----------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| :ref:`int<class_int>` | :ref:`add_check_item<class_NativeMenu_method_add_check_item>`\ (\ rid\: :ref:`RID<class_RID>`, label\: :ref:`String<class_String>`, callback\: :ref:`Callable<class_Callable>` = Callable(), key_callback\: :ref:`Callable<class_Callable>` = Callable(), tag\: :ref:`Variant<class_Variant>` = null, accelerator\: :ref:`Key<enum_@GlobalScope_Key>` = 0, index\: :ref:`int<class_int>` = -1\ ) |
|
||
+-----------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| :ref:`int<class_int>` | :ref:`add_icon_check_item<class_NativeMenu_method_add_icon_check_item>`\ (\ rid\: :ref:`RID<class_RID>`, icon\: :ref:`Texture2D<class_Texture2D>`, label\: :ref:`String<class_String>`, callback\: :ref:`Callable<class_Callable>` = Callable(), key_callback\: :ref:`Callable<class_Callable>` = Callable(), tag\: :ref:`Variant<class_Variant>` = null, accelerator\: :ref:`Key<enum_@GlobalScope_Key>` = 0, index\: :ref:`int<class_int>` = -1\ ) |
|
||
+-----------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| :ref:`int<class_int>` | :ref:`add_icon_item<class_NativeMenu_method_add_icon_item>`\ (\ rid\: :ref:`RID<class_RID>`, icon\: :ref:`Texture2D<class_Texture2D>`, label\: :ref:`String<class_String>`, callback\: :ref:`Callable<class_Callable>` = Callable(), key_callback\: :ref:`Callable<class_Callable>` = Callable(), tag\: :ref:`Variant<class_Variant>` = null, accelerator\: :ref:`Key<enum_@GlobalScope_Key>` = 0, index\: :ref:`int<class_int>` = -1\ ) |
|
||
+-----------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| :ref:`int<class_int>` | :ref:`add_icon_radio_check_item<class_NativeMenu_method_add_icon_radio_check_item>`\ (\ rid\: :ref:`RID<class_RID>`, icon\: :ref:`Texture2D<class_Texture2D>`, label\: :ref:`String<class_String>`, callback\: :ref:`Callable<class_Callable>` = Callable(), key_callback\: :ref:`Callable<class_Callable>` = Callable(), tag\: :ref:`Variant<class_Variant>` = null, accelerator\: :ref:`Key<enum_@GlobalScope_Key>` = 0, index\: :ref:`int<class_int>` = -1\ ) |
|
||
+-----------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| :ref:`int<class_int>` | :ref:`add_item<class_NativeMenu_method_add_item>`\ (\ rid\: :ref:`RID<class_RID>`, label\: :ref:`String<class_String>`, callback\: :ref:`Callable<class_Callable>` = Callable(), key_callback\: :ref:`Callable<class_Callable>` = Callable(), tag\: :ref:`Variant<class_Variant>` = null, accelerator\: :ref:`Key<enum_@GlobalScope_Key>` = 0, index\: :ref:`int<class_int>` = -1\ ) |
|
||
+-----------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| :ref:`int<class_int>` | :ref:`add_multistate_item<class_NativeMenu_method_add_multistate_item>`\ (\ rid\: :ref:`RID<class_RID>`, label\: :ref:`String<class_String>`, max_states\: :ref:`int<class_int>`, default_state\: :ref:`int<class_int>`, callback\: :ref:`Callable<class_Callable>` = Callable(), key_callback\: :ref:`Callable<class_Callable>` = Callable(), tag\: :ref:`Variant<class_Variant>` = null, accelerator\: :ref:`Key<enum_@GlobalScope_Key>` = 0, index\: :ref:`int<class_int>` = -1\ ) |
|
||
+-----------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| :ref:`int<class_int>` | :ref:`add_radio_check_item<class_NativeMenu_method_add_radio_check_item>`\ (\ rid\: :ref:`RID<class_RID>`, label\: :ref:`String<class_String>`, callback\: :ref:`Callable<class_Callable>` = Callable(), key_callback\: :ref:`Callable<class_Callable>` = Callable(), tag\: :ref:`Variant<class_Variant>` = null, accelerator\: :ref:`Key<enum_@GlobalScope_Key>` = 0, index\: :ref:`int<class_int>` = -1\ ) |
|
||
+-----------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| :ref:`int<class_int>` | :ref:`add_separator<class_NativeMenu_method_add_separator>`\ (\ rid\: :ref:`RID<class_RID>`, index\: :ref:`int<class_int>` = -1\ ) |
|
||
+-----------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| :ref:`int<class_int>` | :ref:`add_submenu_item<class_NativeMenu_method_add_submenu_item>`\ (\ rid\: :ref:`RID<class_RID>`, label\: :ref:`String<class_String>`, submenu_rid\: :ref:`RID<class_RID>`, tag\: :ref:`Variant<class_Variant>` = null, index\: :ref:`int<class_int>` = -1\ ) |
|
||
+-----------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| |void| | :ref:`clear<class_NativeMenu_method_clear>`\ (\ rid\: :ref:`RID<class_RID>`\ ) |
|
||
+-----------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| :ref:`RID<class_RID>` | :ref:`create_menu<class_NativeMenu_method_create_menu>`\ (\ ) |
|
||
+-----------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| :ref:`int<class_int>` | :ref:`find_item_index_with_submenu<class_NativeMenu_method_find_item_index_with_submenu>`\ (\ rid\: :ref:`RID<class_RID>`, submenu_rid\: :ref:`RID<class_RID>`\ ) |const| |
|
||
+-----------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| :ref:`int<class_int>` | :ref:`find_item_index_with_tag<class_NativeMenu_method_find_item_index_with_tag>`\ (\ rid\: :ref:`RID<class_RID>`, tag\: :ref:`Variant<class_Variant>`\ ) |const| |
|
||
+-----------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| :ref:`int<class_int>` | :ref:`find_item_index_with_text<class_NativeMenu_method_find_item_index_with_text>`\ (\ rid\: :ref:`RID<class_RID>`, text\: :ref:`String<class_String>`\ ) |const| |
|
||
+-----------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| |void| | :ref:`free_menu<class_NativeMenu_method_free_menu>`\ (\ rid\: :ref:`RID<class_RID>`\ ) |
|
||
+-----------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| :ref:`Key<enum_@GlobalScope_Key>` | :ref:`get_item_accelerator<class_NativeMenu_method_get_item_accelerator>`\ (\ rid\: :ref:`RID<class_RID>`, idx\: :ref:`int<class_int>`\ ) |const| |
|
||
+-----------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| :ref:`Callable<class_Callable>` | :ref:`get_item_callback<class_NativeMenu_method_get_item_callback>`\ (\ rid\: :ref:`RID<class_RID>`, idx\: :ref:`int<class_int>`\ ) |const| |
|
||
+-----------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| :ref:`int<class_int>` | :ref:`get_item_count<class_NativeMenu_method_get_item_count>`\ (\ rid\: :ref:`RID<class_RID>`\ ) |const| |
|
||
+-----------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| :ref:`Texture2D<class_Texture2D>` | :ref:`get_item_icon<class_NativeMenu_method_get_item_icon>`\ (\ rid\: :ref:`RID<class_RID>`, idx\: :ref:`int<class_int>`\ ) |const| |
|
||
+-----------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| :ref:`int<class_int>` | :ref:`get_item_indentation_level<class_NativeMenu_method_get_item_indentation_level>`\ (\ rid\: :ref:`RID<class_RID>`, idx\: :ref:`int<class_int>`\ ) |const| |
|
||
+-----------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| :ref:`Callable<class_Callable>` | :ref:`get_item_key_callback<class_NativeMenu_method_get_item_key_callback>`\ (\ rid\: :ref:`RID<class_RID>`, idx\: :ref:`int<class_int>`\ ) |const| |
|
||
+-----------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| :ref:`int<class_int>` | :ref:`get_item_max_states<class_NativeMenu_method_get_item_max_states>`\ (\ rid\: :ref:`RID<class_RID>`, idx\: :ref:`int<class_int>`\ ) |const| |
|
||
+-----------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| :ref:`int<class_int>` | :ref:`get_item_state<class_NativeMenu_method_get_item_state>`\ (\ rid\: :ref:`RID<class_RID>`, idx\: :ref:`int<class_int>`\ ) |const| |
|
||
+-----------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| :ref:`RID<class_RID>` | :ref:`get_item_submenu<class_NativeMenu_method_get_item_submenu>`\ (\ rid\: :ref:`RID<class_RID>`, idx\: :ref:`int<class_int>`\ ) |const| |
|
||
+-----------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| :ref:`Variant<class_Variant>` | :ref:`get_item_tag<class_NativeMenu_method_get_item_tag>`\ (\ rid\: :ref:`RID<class_RID>`, idx\: :ref:`int<class_int>`\ ) |const| |
|
||
+-----------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| :ref:`String<class_String>` | :ref:`get_item_text<class_NativeMenu_method_get_item_text>`\ (\ rid\: :ref:`RID<class_RID>`, idx\: :ref:`int<class_int>`\ ) |const| |
|
||
+-----------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| :ref:`String<class_String>` | :ref:`get_item_tooltip<class_NativeMenu_method_get_item_tooltip>`\ (\ rid\: :ref:`RID<class_RID>`, idx\: :ref:`int<class_int>`\ ) |const| |
|
||
+-----------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| :ref:`float<class_float>` | :ref:`get_minimum_width<class_NativeMenu_method_get_minimum_width>`\ (\ rid\: :ref:`RID<class_RID>`\ ) |const| |
|
||
+-----------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| :ref:`Callable<class_Callable>` | :ref:`get_popup_close_callback<class_NativeMenu_method_get_popup_close_callback>`\ (\ rid\: :ref:`RID<class_RID>`\ ) |const| |
|
||
+-----------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| :ref:`Callable<class_Callable>` | :ref:`get_popup_open_callback<class_NativeMenu_method_get_popup_open_callback>`\ (\ rid\: :ref:`RID<class_RID>`\ ) |const| |
|
||
+-----------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| :ref:`Vector2<class_Vector2>` | :ref:`get_size<class_NativeMenu_method_get_size>`\ (\ rid\: :ref:`RID<class_RID>`\ ) |const| |
|
||
+-----------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| :ref:`RID<class_RID>` | :ref:`get_system_menu<class_NativeMenu_method_get_system_menu>`\ (\ menu_id\: :ref:`SystemMenus<enum_NativeMenu_SystemMenus>`\ ) |const| |
|
||
+-----------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| :ref:`String<class_String>` | :ref:`get_system_menu_name<class_NativeMenu_method_get_system_menu_name>`\ (\ menu_id\: :ref:`SystemMenus<enum_NativeMenu_SystemMenus>`\ ) |const| |
|
||
+-----------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| :ref:`bool<class_bool>` | :ref:`has_feature<class_NativeMenu_method_has_feature>`\ (\ feature\: :ref:`Feature<enum_NativeMenu_Feature>`\ ) |const| |
|
||
+-----------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| :ref:`bool<class_bool>` | :ref:`has_menu<class_NativeMenu_method_has_menu>`\ (\ rid\: :ref:`RID<class_RID>`\ ) |const| |
|
||
+-----------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| :ref:`bool<class_bool>` | :ref:`has_system_menu<class_NativeMenu_method_has_system_menu>`\ (\ menu_id\: :ref:`SystemMenus<enum_NativeMenu_SystemMenus>`\ ) |const| |
|
||
+-----------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| :ref:`bool<class_bool>` | :ref:`is_item_checkable<class_NativeMenu_method_is_item_checkable>`\ (\ rid\: :ref:`RID<class_RID>`, idx\: :ref:`int<class_int>`\ ) |const| |
|
||
+-----------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| :ref:`bool<class_bool>` | :ref:`is_item_checked<class_NativeMenu_method_is_item_checked>`\ (\ rid\: :ref:`RID<class_RID>`, idx\: :ref:`int<class_int>`\ ) |const| |
|
||
+-----------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| :ref:`bool<class_bool>` | :ref:`is_item_disabled<class_NativeMenu_method_is_item_disabled>`\ (\ rid\: :ref:`RID<class_RID>`, idx\: :ref:`int<class_int>`\ ) |const| |
|
||
+-----------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| :ref:`bool<class_bool>` | :ref:`is_item_hidden<class_NativeMenu_method_is_item_hidden>`\ (\ rid\: :ref:`RID<class_RID>`, idx\: :ref:`int<class_int>`\ ) |const| |
|
||
+-----------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| :ref:`bool<class_bool>` | :ref:`is_item_radio_checkable<class_NativeMenu_method_is_item_radio_checkable>`\ (\ rid\: :ref:`RID<class_RID>`, idx\: :ref:`int<class_int>`\ ) |const| |
|
||
+-----------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| :ref:`bool<class_bool>` | :ref:`is_opened<class_NativeMenu_method_is_opened>`\ (\ rid\: :ref:`RID<class_RID>`\ ) |const| |
|
||
+-----------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| :ref:`bool<class_bool>` | :ref:`is_system_menu<class_NativeMenu_method_is_system_menu>`\ (\ rid\: :ref:`RID<class_RID>`\ ) |const| |
|
||
+-----------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| |void| | :ref:`popup<class_NativeMenu_method_popup>`\ (\ rid\: :ref:`RID<class_RID>`, position\: :ref:`Vector2i<class_Vector2i>`\ ) |
|
||
+-----------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| |void| | :ref:`remove_item<class_NativeMenu_method_remove_item>`\ (\ rid\: :ref:`RID<class_RID>`, idx\: :ref:`int<class_int>`\ ) |
|
||
+-----------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| |void| | :ref:`set_interface_direction<class_NativeMenu_method_set_interface_direction>`\ (\ rid\: :ref:`RID<class_RID>`, is_rtl\: :ref:`bool<class_bool>`\ ) |
|
||
+-----------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| |void| | :ref:`set_item_accelerator<class_NativeMenu_method_set_item_accelerator>`\ (\ rid\: :ref:`RID<class_RID>`, idx\: :ref:`int<class_int>`, keycode\: :ref:`Key<enum_@GlobalScope_Key>`\ ) |
|
||
+-----------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| |void| | :ref:`set_item_callback<class_NativeMenu_method_set_item_callback>`\ (\ rid\: :ref:`RID<class_RID>`, idx\: :ref:`int<class_int>`, callback\: :ref:`Callable<class_Callable>`\ ) |
|
||
+-----------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| |void| | :ref:`set_item_checkable<class_NativeMenu_method_set_item_checkable>`\ (\ rid\: :ref:`RID<class_RID>`, idx\: :ref:`int<class_int>`, checkable\: :ref:`bool<class_bool>`\ ) |
|
||
+-----------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| |void| | :ref:`set_item_checked<class_NativeMenu_method_set_item_checked>`\ (\ rid\: :ref:`RID<class_RID>`, idx\: :ref:`int<class_int>`, checked\: :ref:`bool<class_bool>`\ ) |
|
||
+-----------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| |void| | :ref:`set_item_disabled<class_NativeMenu_method_set_item_disabled>`\ (\ rid\: :ref:`RID<class_RID>`, idx\: :ref:`int<class_int>`, disabled\: :ref:`bool<class_bool>`\ ) |
|
||
+-----------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| |void| | :ref:`set_item_hidden<class_NativeMenu_method_set_item_hidden>`\ (\ rid\: :ref:`RID<class_RID>`, idx\: :ref:`int<class_int>`, hidden\: :ref:`bool<class_bool>`\ ) |
|
||
+-----------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| |void| | :ref:`set_item_hover_callbacks<class_NativeMenu_method_set_item_hover_callbacks>`\ (\ rid\: :ref:`RID<class_RID>`, idx\: :ref:`int<class_int>`, callback\: :ref:`Callable<class_Callable>`\ ) |
|
||
+-----------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| |void| | :ref:`set_item_icon<class_NativeMenu_method_set_item_icon>`\ (\ rid\: :ref:`RID<class_RID>`, idx\: :ref:`int<class_int>`, icon\: :ref:`Texture2D<class_Texture2D>`\ ) |
|
||
+-----------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| |void| | :ref:`set_item_indentation_level<class_NativeMenu_method_set_item_indentation_level>`\ (\ rid\: :ref:`RID<class_RID>`, idx\: :ref:`int<class_int>`, level\: :ref:`int<class_int>`\ ) |
|
||
+-----------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| |void| | :ref:`set_item_key_callback<class_NativeMenu_method_set_item_key_callback>`\ (\ rid\: :ref:`RID<class_RID>`, idx\: :ref:`int<class_int>`, key_callback\: :ref:`Callable<class_Callable>`\ ) |
|
||
+-----------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| |void| | :ref:`set_item_max_states<class_NativeMenu_method_set_item_max_states>`\ (\ rid\: :ref:`RID<class_RID>`, idx\: :ref:`int<class_int>`, max_states\: :ref:`int<class_int>`\ ) |
|
||
+-----------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| |void| | :ref:`set_item_radio_checkable<class_NativeMenu_method_set_item_radio_checkable>`\ (\ rid\: :ref:`RID<class_RID>`, idx\: :ref:`int<class_int>`, checkable\: :ref:`bool<class_bool>`\ ) |
|
||
+-----------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| |void| | :ref:`set_item_state<class_NativeMenu_method_set_item_state>`\ (\ rid\: :ref:`RID<class_RID>`, idx\: :ref:`int<class_int>`, state\: :ref:`int<class_int>`\ ) |
|
||
+-----------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| |void| | :ref:`set_item_submenu<class_NativeMenu_method_set_item_submenu>`\ (\ rid\: :ref:`RID<class_RID>`, idx\: :ref:`int<class_int>`, submenu_rid\: :ref:`RID<class_RID>`\ ) |
|
||
+-----------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| |void| | :ref:`set_item_tag<class_NativeMenu_method_set_item_tag>`\ (\ rid\: :ref:`RID<class_RID>`, idx\: :ref:`int<class_int>`, tag\: :ref:`Variant<class_Variant>`\ ) |
|
||
+-----------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| |void| | :ref:`set_item_text<class_NativeMenu_method_set_item_text>`\ (\ rid\: :ref:`RID<class_RID>`, idx\: :ref:`int<class_int>`, text\: :ref:`String<class_String>`\ ) |
|
||
+-----------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| |void| | :ref:`set_item_tooltip<class_NativeMenu_method_set_item_tooltip>`\ (\ rid\: :ref:`RID<class_RID>`, idx\: :ref:`int<class_int>`, tooltip\: :ref:`String<class_String>`\ ) |
|
||
+-----------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| |void| | :ref:`set_minimum_width<class_NativeMenu_method_set_minimum_width>`\ (\ rid\: :ref:`RID<class_RID>`, width\: :ref:`float<class_float>`\ ) |
|
||
+-----------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| |void| | :ref:`set_popup_close_callback<class_NativeMenu_method_set_popup_close_callback>`\ (\ rid\: :ref:`RID<class_RID>`, callback\: :ref:`Callable<class_Callable>`\ ) |
|
||
+-----------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| |void| | :ref:`set_popup_open_callback<class_NativeMenu_method_set_popup_open_callback>`\ (\ rid\: :ref:`RID<class_RID>`, callback\: :ref:`Callable<class_Callable>`\ ) |
|
||
+-----------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
|
||
.. rst-class:: classref-section-separator
|
||
|
||
----
|
||
|
||
.. rst-class:: classref-descriptions-group
|
||
|
||
枚举
|
||
----
|
||
|
||
.. _enum_NativeMenu_Feature:
|
||
|
||
.. rst-class:: classref-enumeration
|
||
|
||
enum **Feature**: :ref:`🔗<enum_NativeMenu_Feature>`
|
||
|
||
.. _class_NativeMenu_constant_FEATURE_GLOBAL_MENU:
|
||
|
||
.. rst-class:: classref-enumeration-constant
|
||
|
||
:ref:`Feature<enum_NativeMenu_Feature>` **FEATURE_GLOBAL_MENU** = ``0``
|
||
|
||
**NativeMenu** 支持原生全局主菜单。
|
||
|
||
.. _class_NativeMenu_constant_FEATURE_POPUP_MENU:
|
||
|
||
.. rst-class:: classref-enumeration-constant
|
||
|
||
:ref:`Feature<enum_NativeMenu_Feature>` **FEATURE_POPUP_MENU** = ``1``
|
||
|
||
**NativeMenu** 支持原生弹出菜单。
|
||
|
||
.. _class_NativeMenu_constant_FEATURE_OPEN_CLOSE_CALLBACK:
|
||
|
||
.. rst-class:: classref-enumeration-constant
|
||
|
||
:ref:`Feature<enum_NativeMenu_Feature>` **FEATURE_OPEN_CLOSE_CALLBACK** = ``2``
|
||
|
||
**NativeMenu** 支持菜单打开和关闭回调。
|
||
|
||
.. _class_NativeMenu_constant_FEATURE_HOVER_CALLBACK:
|
||
|
||
.. rst-class:: classref-enumeration-constant
|
||
|
||
:ref:`Feature<enum_NativeMenu_Feature>` **FEATURE_HOVER_CALLBACK** = ``3``
|
||
|
||
**NativeMenu** 支持菜单项悬停回调。
|
||
|
||
.. _class_NativeMenu_constant_FEATURE_KEY_CALLBACK:
|
||
|
||
.. rst-class:: classref-enumeration-constant
|
||
|
||
:ref:`Feature<enum_NativeMenu_Feature>` **FEATURE_KEY_CALLBACK** = ``4``
|
||
|
||
**NativeMenu** 支持菜单项加速器/键回调。
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _enum_NativeMenu_SystemMenus:
|
||
|
||
.. rst-class:: classref-enumeration
|
||
|
||
enum **SystemMenus**: :ref:`🔗<enum_NativeMenu_SystemMenus>`
|
||
|
||
.. _class_NativeMenu_constant_INVALID_MENU_ID:
|
||
|
||
.. rst-class:: classref-enumeration-constant
|
||
|
||
:ref:`SystemMenus<enum_NativeMenu_SystemMenus>` **INVALID_MENU_ID** = ``0``
|
||
|
||
无效的特殊系统菜单 ID。
|
||
|
||
.. _class_NativeMenu_constant_MAIN_MENU_ID:
|
||
|
||
.. rst-class:: classref-enumeration-constant
|
||
|
||
:ref:`SystemMenus<enum_NativeMenu_SystemMenus>` **MAIN_MENU_ID** = ``1``
|
||
|
||
全局主菜单 ID。
|
||
|
||
.. _class_NativeMenu_constant_APPLICATION_MENU_ID:
|
||
|
||
.. rst-class:: classref-enumeration-constant
|
||
|
||
:ref:`SystemMenus<enum_NativeMenu_SystemMenus>` **APPLICATION_MENU_ID** = ``2``
|
||
|
||
应用程序(macOS 上“Apple”菜单后的第一个菜单)菜单 ID。
|
||
|
||
.. _class_NativeMenu_constant_WINDOW_MENU_ID:
|
||
|
||
.. rst-class:: classref-enumeration-constant
|
||
|
||
:ref:`SystemMenus<enum_NativeMenu_SystemMenus>` **WINDOW_MENU_ID** = ``3``
|
||
|
||
“窗口”菜单 ID(在 macOS 上,该菜单包括标准窗口控制项和打开的窗口列表)。
|
||
|
||
.. _class_NativeMenu_constant_HELP_MENU_ID:
|
||
|
||
.. rst-class:: classref-enumeration-constant
|
||
|
||
:ref:`SystemMenus<enum_NativeMenu_SystemMenus>` **HELP_MENU_ID** = ``4``
|
||
|
||
“帮助”菜单 ID(在 macOS 上,该菜单包括帮助搜索栏)。
|
||
|
||
.. _class_NativeMenu_constant_DOCK_MENU_ID:
|
||
|
||
.. rst-class:: classref-enumeration-constant
|
||
|
||
:ref:`SystemMenus<enum_NativeMenu_SystemMenus>` **DOCK_MENU_ID** = ``5``
|
||
|
||
Dock 图标右键菜单 ID(在 macOS 上,该菜单包括标准应用程序控制项和打开的窗口列表)。
|
||
|
||
.. rst-class:: classref-section-separator
|
||
|
||
----
|
||
|
||
.. rst-class:: classref-descriptions-group
|
||
|
||
方法说明
|
||
--------
|
||
|
||
.. _class_NativeMenu_method_add_check_item:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
:ref:`int<class_int>` **add_check_item**\ (\ rid\: :ref:`RID<class_RID>`, label\: :ref:`String<class_String>`, callback\: :ref:`Callable<class_Callable>` = Callable(), key_callback\: :ref:`Callable<class_Callable>` = Callable(), tag\: :ref:`Variant<class_Variant>` = null, accelerator\: :ref:`Key<enum_@GlobalScope_Key>` = 0, index\: :ref:`int<class_int>` = -1\ ) :ref:`🔗<class_NativeMenu_method_add_check_item>`
|
||
|
||
向 ID 为 ``rid`` 的全局菜单中添加新的可勾选菜单项,显示的文本为 ``label``\ 。
|
||
|
||
返回插入菜单项的索引,不保证与 ``index`` 的值相同。
|
||
|
||
还可以定义键盘快捷键 ``accelerator``\ ,按下后即便该菜单按钮尚未打开,也会进行触发。\ ``accelerator`` 通常是将 :ref:`KeyModifierMask<enum_@GlobalScope_KeyModifierMask>` 和 :ref:`Key<enum_@GlobalScope_Key>` 用按位或操作进行的组合,例如 ``KEY_MASK_CTRL | KEY_A``\ (\ :kbd:`Ctrl + A`\ )。
|
||
|
||
\ **注意:**\ ``callback`` 和 ``key_callback`` Callable 均只接受一个 Variant 参数,传入 Callable 的参数是传给 ``tag`` 的参数。
|
||
|
||
\ **注意:**\ 该方法在 macOS 和 Windows 上实现。
|
||
|
||
\ **注意:**\ 在 Windows 上会忽略 ``accelerator`` 和 ``key_callback``\ 。
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_NativeMenu_method_add_icon_check_item:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
:ref:`int<class_int>` **add_icon_check_item**\ (\ rid\: :ref:`RID<class_RID>`, icon\: :ref:`Texture2D<class_Texture2D>`, label\: :ref:`String<class_String>`, callback\: :ref:`Callable<class_Callable>` = Callable(), key_callback\: :ref:`Callable<class_Callable>` = Callable(), tag\: :ref:`Variant<class_Variant>` = null, accelerator\: :ref:`Key<enum_@GlobalScope_Key>` = 0, index\: :ref:`int<class_int>` = -1\ ) :ref:`🔗<class_NativeMenu_method_add_icon_check_item>`
|
||
|
||
向 ID 为 ``rid`` 的全局菜单中添加新的可勾选菜单项,显示的文本为 ``label``\ ,图标为 ``icon``\ 。
|
||
|
||
返回插入菜单项的索引,不保证与 ``index`` 的值相同。
|
||
|
||
还可以定义键盘快捷键 ``accelerator``\ ,按下后即便该菜单按钮尚未打开,也会进行触发。\ ``accelerator`` 通常是将 :ref:`KeyModifierMask<enum_@GlobalScope_KeyModifierMask>` 和 :ref:`Key<enum_@GlobalScope_Key>` 用按位或操作进行的组合,例如 ``KEY_MASK_CTRL | KEY_A``\ (\ :kbd:`Ctrl + A`\ )。
|
||
|
||
\ **注意:**\ ``callback`` 和 ``key_callback`` Callable 均只接受一个 Variant 参数,传入 Callable 的参数是传给 ``tag`` 的参数。
|
||
|
||
\ **注意:**\ 该方法在 macOS 和 Windows 上实现。
|
||
|
||
\ **注意:**\ 在 Windows 上会忽略 ``accelerator`` 和 ``key_callback``\ 。
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_NativeMenu_method_add_icon_item:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
:ref:`int<class_int>` **add_icon_item**\ (\ rid\: :ref:`RID<class_RID>`, icon\: :ref:`Texture2D<class_Texture2D>`, label\: :ref:`String<class_String>`, callback\: :ref:`Callable<class_Callable>` = Callable(), key_callback\: :ref:`Callable<class_Callable>` = Callable(), tag\: :ref:`Variant<class_Variant>` = null, accelerator\: :ref:`Key<enum_@GlobalScope_Key>` = 0, index\: :ref:`int<class_int>` = -1\ ) :ref:`🔗<class_NativeMenu_method_add_icon_item>`
|
||
|
||
向 ID 为 ``rid`` 的全局菜单中添加新的菜单项,显示的文本为 ``label``\ ,图标为 ``icon``\ 。
|
||
|
||
返回插入菜单项的索引,不保证与 ``index`` 的值相同。
|
||
|
||
还可以定义键盘快捷键 ``accelerator``\ ,按下后即便该菜单按钮尚未打开,也会进行触发。\ ``accelerator`` 通常是将 :ref:`KeyModifierMask<enum_@GlobalScope_KeyModifierMask>` 和 :ref:`Key<enum_@GlobalScope_Key>` 用按位或操作进行的组合,例如 ``KEY_MASK_CTRL | KEY_A``\ (\ :kbd:`Ctrl + A`\ )。
|
||
|
||
\ **注意:**\ ``callback`` 和 ``key_callback`` Callable 均只接受一个 Variant 参数,传入 Callable 的参数是传给 ``tag`` 的参数。
|
||
|
||
\ **注意:**\ 该方法在 macOS 和 Windows 上实现。
|
||
|
||
\ **注意:**\ 在 Windows 上会忽略 ``accelerator`` 和 ``key_callback``\ 。
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_NativeMenu_method_add_icon_radio_check_item:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
:ref:`int<class_int>` **add_icon_radio_check_item**\ (\ rid\: :ref:`RID<class_RID>`, icon\: :ref:`Texture2D<class_Texture2D>`, label\: :ref:`String<class_String>`, callback\: :ref:`Callable<class_Callable>` = Callable(), key_callback\: :ref:`Callable<class_Callable>` = Callable(), tag\: :ref:`Variant<class_Variant>` = null, accelerator\: :ref:`Key<enum_@GlobalScope_Key>` = 0, index\: :ref:`int<class_int>` = -1\ ) :ref:`🔗<class_NativeMenu_method_add_icon_radio_check_item>`
|
||
|
||
向 ID 为 ``rid`` 的全局菜单中添加新的单选菜单项,显示的文本为 ``label``\ ,图标为 ``icon``\ 。
|
||
|
||
返回插入菜单项的索引,不保证与 ``index`` 的值相同。
|
||
|
||
还可以定义键盘快捷键 ``accelerator``\ ,按下后即便该菜单按钮尚未打开,也会进行触发。\ ``accelerator`` 通常是将 :ref:`KeyModifierMask<enum_@GlobalScope_KeyModifierMask>` 和 :ref:`Key<enum_@GlobalScope_Key>` 用按位或操作进行的组合,例如 ``KEY_MASK_CTRL | KEY_A``\ (\ :kbd:`Ctrl + A`\ )。
|
||
|
||
\ **注意:**\ 单选菜单项只负责显示选中标记,并没有任何内置检查行为,必须手动进行选中、取消选中的操作。关于如何进行控制的更多信息见 :ref:`set_item_checked<class_NativeMenu_method_set_item_checked>`\ 。
|
||
|
||
\ **注意:**\ ``callback`` 和 ``key_callback`` Callable 均只接受一个 Variant 参数,传入 Callable 的参数是传给 ``tag`` 的参数。
|
||
|
||
\ **注意:**\ 该方法在 macOS 和 Windows 上实现。
|
||
|
||
\ **注意:**\ 在 Windows 上会忽略 ``accelerator`` 和 ``key_callback``\ 。
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_NativeMenu_method_add_item:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
:ref:`int<class_int>` **add_item**\ (\ rid\: :ref:`RID<class_RID>`, label\: :ref:`String<class_String>`, callback\: :ref:`Callable<class_Callable>` = Callable(), key_callback\: :ref:`Callable<class_Callable>` = Callable(), tag\: :ref:`Variant<class_Variant>` = null, accelerator\: :ref:`Key<enum_@GlobalScope_Key>` = 0, index\: :ref:`int<class_int>` = -1\ ) :ref:`🔗<class_NativeMenu_method_add_item>`
|
||
|
||
向 ID 为 ``rid`` 的全局菜单添加新的菜单项,显示的文本为 ``label``\ 。
|
||
|
||
返回插入菜单项的索引,不保证与 ``index`` 的值相同。
|
||
|
||
还可以定义键盘快捷键 ``accelerator``\ ,按下后即便该菜单按钮尚未打开,也会进行触发。\ ``accelerator`` 通常是将 :ref:`KeyModifierMask<enum_@GlobalScope_KeyModifierMask>` 和 :ref:`Key<enum_@GlobalScope_Key>` 用按位或操作进行的组合,例如 ``KEY_MASK_CTRL | KEY_A``\ (\ :kbd:`Ctrl + A`\ )。
|
||
|
||
\ **注意:**\ ``callback`` 和 ``key_callback`` Callable 均只接受一个 Variant 参数,传入 Callable 的参数是传给 ``tag`` 的参数。
|
||
|
||
\ **注意:**\ 该方法在 macOS 和 Windows 上实现。
|
||
|
||
\ **注意:**\ 在 Windows 上会忽略 ``accelerator`` 和 ``key_callback``\ 。
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_NativeMenu_method_add_multistate_item:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
:ref:`int<class_int>` **add_multistate_item**\ (\ rid\: :ref:`RID<class_RID>`, label\: :ref:`String<class_String>`, max_states\: :ref:`int<class_int>`, default_state\: :ref:`int<class_int>`, callback\: :ref:`Callable<class_Callable>` = Callable(), key_callback\: :ref:`Callable<class_Callable>` = Callable(), tag\: :ref:`Variant<class_Variant>` = null, accelerator\: :ref:`Key<enum_@GlobalScope_Key>` = 0, index\: :ref:`int<class_int>` = -1\ ) :ref:`🔗<class_NativeMenu_method_add_multistate_item>`
|
||
|
||
向 ID 为 ``rid`` 的全局菜单中添加新的菜单项,显示的文本为 ``label``\ 。
|
||
|
||
与常规的二态菜单项不同,多状态菜单项的状态可以多于两个,由 ``max_states`` 定义。每点击或激活该菜单项一次,状态就会加一。默认值由 ``default_state`` 定义。
|
||
|
||
返回插入菜单项的索引,不保证与 ``index`` 的值相同。
|
||
|
||
还可以定义键盘快捷键 ``accelerator``\ ,按下后即便该菜单按钮尚未打开,也会进行触发。\ ``accelerator`` 通常是将 :ref:`KeyModifierMask<enum_@GlobalScope_KeyModifierMask>` 和 :ref:`Key<enum_@GlobalScope_Key>` 用按位或操作进行的组合,例如 ``KEY_MASK_CTRL | KEY_A``\ (\ :kbd:`Ctrl + A`\ )。
|
||
|
||
\ **注意:**\ 默认情况下不会展示当前菜单项的状态,应该手动更改。
|
||
|
||
\ **注意:**\ ``callback`` 和 ``key_callback`` Callable 均只接受一个 Variant 参数,传入 Callable 的参数是传给 ``tag`` 的参数。
|
||
|
||
\ **注意:**\ 该方法在 macOS 和 Windows 上实现。
|
||
|
||
\ **注意:**\ 在 Windows 上会忽略 ``accelerator`` 和 ``key_callback``\ 。
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_NativeMenu_method_add_radio_check_item:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
:ref:`int<class_int>` **add_radio_check_item**\ (\ rid\: :ref:`RID<class_RID>`, label\: :ref:`String<class_String>`, callback\: :ref:`Callable<class_Callable>` = Callable(), key_callback\: :ref:`Callable<class_Callable>` = Callable(), tag\: :ref:`Variant<class_Variant>` = null, accelerator\: :ref:`Key<enum_@GlobalScope_Key>` = 0, index\: :ref:`int<class_int>` = -1\ ) :ref:`🔗<class_NativeMenu_method_add_radio_check_item>`
|
||
|
||
向 ID 为 ``rid`` 的全局菜单中添加新的单选菜单项,显示的文本为 ``label``\ 。
|
||
|
||
返回插入菜单项的索引,不保证与 ``index`` 的值相同。
|
||
|
||
还可以定义键盘快捷键 ``accelerator``\ ,按下后即便该菜单按钮尚未打开,也会进行触发。\ ``accelerator`` 通常是将 :ref:`KeyModifierMask<enum_@GlobalScope_KeyModifierMask>` 和 :ref:`Key<enum_@GlobalScope_Key>` 用按位或操作进行的组合,例如 ``KEY_MASK_CTRL | KEY_A``\ (\ :kbd:`Ctrl + A`\ )。
|
||
|
||
\ **注意:**\ 单选菜单项只负责显示选中标记,并没有任何内置检查行为,必须手动进行选中、取消选中的操作。关于如何进行控制的更多信息见 :ref:`set_item_checked<class_NativeMenu_method_set_item_checked>`\ 。
|
||
|
||
\ **注意:**\ ``callback`` 和 ``key_callback`` Callable 均只接受一个 Variant 参数,传入 Callable 的参数是传给 ``tag`` 的参数。
|
||
|
||
\ **注意:**\ 该方法在 macOS 和 Windows 上实现。
|
||
|
||
\ **注意:**\ 在 Windows 上会忽略 ``accelerator`` 和 ``key_callback``\ 。
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_NativeMenu_method_add_separator:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
:ref:`int<class_int>` **add_separator**\ (\ rid\: :ref:`RID<class_RID>`, index\: :ref:`int<class_int>` = -1\ ) :ref:`🔗<class_NativeMenu_method_add_separator>`
|
||
|
||
向 ID 为 ``rid`` 的全局菜单中添加分隔符。分隔符也会占据一个索引号。
|
||
|
||
返回插入菜单项的索引,不保证与 ``index`` 的值相同。
|
||
|
||
\ **注意:**\ 该方法在 macOS 和 Windows 上实现。
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_NativeMenu_method_add_submenu_item:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
:ref:`int<class_int>` **add_submenu_item**\ (\ rid\: :ref:`RID<class_RID>`, label\: :ref:`String<class_String>`, submenu_rid\: :ref:`RID<class_RID>`, tag\: :ref:`Variant<class_Variant>` = null, index\: :ref:`int<class_int>` = -1\ ) :ref:`🔗<class_NativeMenu_method_add_submenu_item>`
|
||
|
||
向 ID 为 ``rid`` 的全局菜单中添加作为子菜单的菜单项。\ ``submenu_rid`` 参数为全局菜单根菜单项的 RID,会在点击该菜单项时显示。
|
||
|
||
返回插入菜单项的索引,不保证与 ``index`` 的值相同。
|
||
|
||
\ **注意:**\ 该方法在 macOS 和 Windows 上实现。
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_NativeMenu_method_clear:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
|void| **clear**\ (\ rid\: :ref:`RID<class_RID>`\ ) :ref:`🔗<class_NativeMenu_method_clear>`
|
||
|
||
从全局菜单中移除所有菜单项 ``rid``\ 。
|
||
|
||
\ **注意:**\ 该方法在 macOS 和 Windows 上实现。
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_NativeMenu_method_create_menu:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
:ref:`RID<class_RID>` **create_menu**\ (\ ) :ref:`🔗<class_NativeMenu_method_create_menu>`
|
||
|
||
新建全局菜单对象。
|
||
|
||
\ **注意:**\ 该方法在 macOS 和 Windows 上实现。
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_NativeMenu_method_find_item_index_with_submenu:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
:ref:`int<class_int>` **find_item_index_with_submenu**\ (\ rid\: :ref:`RID<class_RID>`, submenu_rid\: :ref:`RID<class_RID>`\ ) |const| :ref:`🔗<class_NativeMenu_method_find_item_index_with_submenu>`
|
||
|
||
返回由 ``submenu_rid`` 指定的子菜单项的索引。索引由引擎自动分配给每个菜单项,无法手动设置。
|
||
|
||
\ **注意:**\ 该方法在 macOS 和 Windows 上实现。
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_NativeMenu_method_find_item_index_with_tag:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
:ref:`int<class_int>` **find_item_index_with_tag**\ (\ rid\: :ref:`RID<class_RID>`, tag\: :ref:`Variant<class_Variant>`\ ) |const| :ref:`🔗<class_NativeMenu_method_find_item_index_with_tag>`
|
||
|
||
返回具有指定 ``tag`` 的菜单项的索引。引擎会自动为每个菜单项分配索引,无法手动设置。
|
||
|
||
\ **注意:**\ 该方法在 macOS 和 Windows 上实现。
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_NativeMenu_method_find_item_index_with_text:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
:ref:`int<class_int>` **find_item_index_with_text**\ (\ rid\: :ref:`RID<class_RID>`, text\: :ref:`String<class_String>`\ ) |const| :ref:`🔗<class_NativeMenu_method_find_item_index_with_text>`
|
||
|
||
返回具有指定 ``text`` 的菜单项的索引。引擎会自动为每个菜单项分配索引,无法手动设置。
|
||
|
||
\ **注意:**\ 该方法在 macOS 和 Windows 上实现。
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_NativeMenu_method_free_menu:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
|void| **free_menu**\ (\ rid\: :ref:`RID<class_RID>`\ ) :ref:`🔗<class_NativeMenu_method_free_menu>`
|
||
|
||
释放该 **NativeMenu** 所创建的全局菜单对象。
|
||
|
||
\ **注意:**\ 该方法在 macOS 和 Windows 上实现。
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_NativeMenu_method_get_item_accelerator:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
:ref:`Key<enum_@GlobalScope_Key>` **get_item_accelerator**\ (\ rid\: :ref:`RID<class_RID>`, idx\: :ref:`int<class_int>`\ ) |const| :ref:`🔗<class_NativeMenu_method_get_item_accelerator>`
|
||
|
||
返回索引为 ``idx`` 的菜单项的快捷键。快捷键是能够激活该菜单项的特殊按键组合,无论该控件是否有焦点。
|
||
|
||
\ **注意:**\ 该方法仅在 macOS 上实现。
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_NativeMenu_method_get_item_callback:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
:ref:`Callable<class_Callable>` **get_item_callback**\ (\ rid\: :ref:`RID<class_RID>`, idx\: :ref:`int<class_int>`\ ) |const| :ref:`🔗<class_NativeMenu_method_get_item_callback>`
|
||
|
||
返回索引为 ``idx`` 的菜单项的回调。
|
||
|
||
\ **注意:**\ 该方法在 macOS 和 Windows 上实现。
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_NativeMenu_method_get_item_count:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
:ref:`int<class_int>` **get_item_count**\ (\ rid\: :ref:`RID<class_RID>`\ ) |const| :ref:`🔗<class_NativeMenu_method_get_item_count>`
|
||
|
||
返回全局菜单 ``rid`` 中的菜单项的数量。
|
||
|
||
\ **注意:**\ 该方法在 macOS 和 Windows 上实现。
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_NativeMenu_method_get_item_icon:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
:ref:`Texture2D<class_Texture2D>` **get_item_icon**\ (\ rid\: :ref:`RID<class_RID>`, idx\: :ref:`int<class_int>`\ ) |const| :ref:`🔗<class_NativeMenu_method_get_item_icon>`
|
||
|
||
返回索引为 ``idx`` 的菜单项的图标。
|
||
|
||
\ **注意:**\ 该方法在 macOS 和 Windows 上实现。
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_NativeMenu_method_get_item_indentation_level:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
:ref:`int<class_int>` **get_item_indentation_level**\ (\ rid\: :ref:`RID<class_RID>`, idx\: :ref:`int<class_int>`\ ) |const| :ref:`🔗<class_NativeMenu_method_get_item_indentation_level>`
|
||
|
||
返回索引为 ``idx`` 的菜单项的水平偏移量。
|
||
|
||
\ **注意:**\ 该方法仅在 macOS 上实现。
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_NativeMenu_method_get_item_key_callback:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
:ref:`Callable<class_Callable>` **get_item_key_callback**\ (\ rid\: :ref:`RID<class_RID>`, idx\: :ref:`int<class_int>`\ ) |const| :ref:`🔗<class_NativeMenu_method_get_item_key_callback>`
|
||
|
||
返回索引为 ``idx`` 的菜单项的快捷键回调。
|
||
|
||
\ **注意:**\ 该方法仅在 macOS 上实现。
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_NativeMenu_method_get_item_max_states:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
:ref:`int<class_int>` **get_item_max_states**\ (\ rid\: :ref:`RID<class_RID>`, idx\: :ref:`int<class_int>`\ ) |const| :ref:`🔗<class_NativeMenu_method_get_item_max_states>`
|
||
|
||
返回多状态项的状态数。详见 :ref:`add_multistate_item<class_NativeMenu_method_add_multistate_item>`\ 。
|
||
|
||
\ **注意:**\ 该方法在 macOS 和 Windows 上实现。
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_NativeMenu_method_get_item_state:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
:ref:`int<class_int>` **get_item_state**\ (\ rid\: :ref:`RID<class_RID>`, idx\: :ref:`int<class_int>`\ ) |const| :ref:`🔗<class_NativeMenu_method_get_item_state>`
|
||
|
||
返回多状态项的状态。详见 :ref:`add_multistate_item<class_NativeMenu_method_add_multistate_item>`\ 。
|
||
|
||
\ **注意:**\ 该方法在 macOS 和 Windows 上实现。
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_NativeMenu_method_get_item_submenu:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
:ref:`RID<class_RID>` **get_item_submenu**\ (\ rid\: :ref:`RID<class_RID>`, idx\: :ref:`int<class_int>`\ ) |const| :ref:`🔗<class_NativeMenu_method_get_item_submenu>`
|
||
|
||
返回索引为 ``idx`` 的菜单项的子菜单 ID。关于如何添加子菜单的更多信息见 :ref:`add_submenu_item<class_NativeMenu_method_add_submenu_item>`\ 。
|
||
|
||
\ **注意:**\ 该方法在 macOS 和 Windows 上实现。
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_NativeMenu_method_get_item_tag:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
:ref:`Variant<class_Variant>` **get_item_tag**\ (\ rid\: :ref:`RID<class_RID>`, idx\: :ref:`int<class_int>`\ ) |const| :ref:`🔗<class_NativeMenu_method_get_item_tag>`
|
||
|
||
返回指定菜单项的元数据,可能是任何类型。元数据可以使用 :ref:`set_item_tag<class_NativeMenu_method_set_item_tag>` 设置,该方法提供了一种将上下文数据分配给菜单项的简单方式。
|
||
|
||
\ **注意:**\ 该方法在 macOS 和 Windows 上实现。
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_NativeMenu_method_get_item_text:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
:ref:`String<class_String>` **get_item_text**\ (\ rid\: :ref:`RID<class_RID>`, idx\: :ref:`int<class_int>`\ ) |const| :ref:`🔗<class_NativeMenu_method_get_item_text>`
|
||
|
||
返回索引为 ``idx`` 的菜单项的文本。
|
||
|
||
\ **注意:**\ 该方法在 macOS 和 Windows 上实现。
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_NativeMenu_method_get_item_tooltip:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
:ref:`String<class_String>` **get_item_tooltip**\ (\ rid\: :ref:`RID<class_RID>`, idx\: :ref:`int<class_int>`\ ) |const| :ref:`🔗<class_NativeMenu_method_get_item_tooltip>`
|
||
|
||
返回索引为 ``idx`` 的菜单项所关联的工具提示。
|
||
|
||
\ **注意:**\ 该方法仅在 macOS 上实现。
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_NativeMenu_method_get_minimum_width:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
:ref:`float<class_float>` **get_minimum_width**\ (\ rid\: :ref:`RID<class_RID>`\ ) |const| :ref:`🔗<class_NativeMenu_method_get_minimum_width>`
|
||
|
||
返回全局菜单的最小宽度。
|
||
|
||
\ **注意:**\ 该方法仅在 macOS 上实现。
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_NativeMenu_method_get_popup_close_callback:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
:ref:`Callable<class_Callable>` **get_popup_close_callback**\ (\ rid\: :ref:`RID<class_RID>`\ ) |const| :ref:`🔗<class_NativeMenu_method_get_popup_close_callback>`
|
||
|
||
返回全局菜单的关闭回调。
|
||
|
||
\ **注意:**\ 该方法仅在 macOS 上实现。
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_NativeMenu_method_get_popup_open_callback:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
:ref:`Callable<class_Callable>` **get_popup_open_callback**\ (\ rid\: :ref:`RID<class_RID>`\ ) |const| :ref:`🔗<class_NativeMenu_method_get_popup_open_callback>`
|
||
|
||
返回全局菜单的打开回调。
|
||
|
||
\ **注意:**\ 该方法仅在 macOS 上实现。
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_NativeMenu_method_get_size:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
:ref:`Vector2<class_Vector2>` **get_size**\ (\ rid\: :ref:`RID<class_RID>`\ ) |const| :ref:`🔗<class_NativeMenu_method_get_size>`
|
||
|
||
返回全局菜单的大小。
|
||
|
||
\ **注意:**\ 该方法在 macOS 和 Windows 上实现。
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_NativeMenu_method_get_system_menu:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
:ref:`RID<class_RID>` **get_system_menu**\ (\ menu_id\: :ref:`SystemMenus<enum_NativeMenu_SystemMenus>`\ ) |const| :ref:`🔗<class_NativeMenu_method_get_system_menu>`
|
||
|
||
返回特殊系统菜单的 RID。
|
||
|
||
\ **注意:**\ 该方法仅在 macOS 上实现。
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_NativeMenu_method_get_system_menu_name:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
:ref:`String<class_String>` **get_system_menu_name**\ (\ menu_id\: :ref:`SystemMenus<enum_NativeMenu_SystemMenus>`\ ) |const| :ref:`🔗<class_NativeMenu_method_get_system_menu_name>`
|
||
|
||
返回特殊系统菜单的可读名称。
|
||
|
||
\ **注意:**\ 该方法仅在 macOS 上实现。
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_NativeMenu_method_has_feature:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
:ref:`bool<class_bool>` **has_feature**\ (\ feature\: :ref:`Feature<enum_NativeMenu_Feature>`\ ) |const| :ref:`🔗<class_NativeMenu_method_has_feature>`
|
||
|
||
如果当前的 **NativeMenu** 支持指定的特性 ``feature``\ ,则返回 ``true``\ ,否则返回 ``false``\ 。
|
||
|
||
\ **注意:**\ 该方法在 macOS 和 Windows 上实现。
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_NativeMenu_method_has_menu:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
:ref:`bool<class_bool>` **has_menu**\ (\ rid\: :ref:`RID<class_RID>`\ ) |const| :ref:`🔗<class_NativeMenu_method_has_menu>`
|
||
|
||
如果 ``rid`` 是有效的全局菜单,则返回 ``true``\ 。
|
||
|
||
\ **注意:**\ 该方法在 macOS 和 Windows 上实现。
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_NativeMenu_method_has_system_menu:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
:ref:`bool<class_bool>` **has_system_menu**\ (\ menu_id\: :ref:`SystemMenus<enum_NativeMenu_SystemMenus>`\ ) |const| :ref:`🔗<class_NativeMenu_method_has_system_menu>`
|
||
|
||
如果支持特殊系统菜单则返回 ``true``\ 。
|
||
|
||
\ **注意:**\ 该方法仅在 macOS 上实现。
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_NativeMenu_method_is_item_checkable:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
:ref:`bool<class_bool>` **is_item_checkable**\ (\ rid\: :ref:`RID<class_RID>`, idx\: :ref:`int<class_int>`\ ) |const| :ref:`🔗<class_NativeMenu_method_is_item_checkable>`
|
||
|
||
如果索引为 ``idx`` 的菜单项能够以某种方式被勾选,即有复选框或单选按钮,则返回 ``true``\ 。
|
||
|
||
\ **注意:**\ 该方法在 macOS 和 Windows 上实现。
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_NativeMenu_method_is_item_checked:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
:ref:`bool<class_bool>` **is_item_checked**\ (\ rid\: :ref:`RID<class_RID>`, idx\: :ref:`int<class_int>`\ ) |const| :ref:`🔗<class_NativeMenu_method_is_item_checked>`
|
||
|
||
如果索引 ``idx`` 处的菜单项被勾选,则返回 ``true``\ 。
|
||
|
||
\ **注意:**\ 该方法在 macOS 和 Windows 上实现。
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_NativeMenu_method_is_item_disabled:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
:ref:`bool<class_bool>` **is_item_disabled**\ (\ rid\: :ref:`RID<class_RID>`, idx\: :ref:`int<class_int>`\ ) |const| :ref:`🔗<class_NativeMenu_method_is_item_disabled>`
|
||
|
||
如果索引 ``idx`` 处的菜单项被禁用,则返回 ``true``\ 。禁用后,无法选择它,也无法调用其动作。
|
||
|
||
有关如何禁用菜单项的更多信息,请参阅 :ref:`set_item_disabled<class_NativeMenu_method_set_item_disabled>`\ 。
|
||
|
||
\ **注意:**\ 该方法在 macOS 和 Windows 上实现。
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_NativeMenu_method_is_item_hidden:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
:ref:`bool<class_bool>` **is_item_hidden**\ (\ rid\: :ref:`RID<class_RID>`, idx\: :ref:`int<class_int>`\ ) |const| :ref:`🔗<class_NativeMenu_method_is_item_hidden>`
|
||
|
||
如果索引 ``idx`` 处的菜单项被隐藏,则返回 ``true``\ 。
|
||
|
||
有关如何隐藏菜单项的更多信息,请参阅 :ref:`set_item_hidden<class_NativeMenu_method_set_item_hidden>`\ 。
|
||
|
||
\ **注意:**\ 该方法仅在 macOS 上实现。
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_NativeMenu_method_is_item_radio_checkable:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
:ref:`bool<class_bool>` **is_item_radio_checkable**\ (\ rid\: :ref:`RID<class_RID>`, idx\: :ref:`int<class_int>`\ ) |const| :ref:`🔗<class_NativeMenu_method_is_item_radio_checkable>`
|
||
|
||
如果索引为 ``idx`` 的菜单项为单选按钮风格,则返回 ``true``\ 。
|
||
|
||
\ **注意:**\ 仅为装饰作用;必须自行为单选组添加勾选、取消勾选的逻辑。
|
||
|
||
\ **注意:**\ 该方法在 macOS 和 Windows 上实现。
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_NativeMenu_method_is_opened:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
:ref:`bool<class_bool>` **is_opened**\ (\ rid\: :ref:`RID<class_RID>`\ ) |const| :ref:`🔗<class_NativeMenu_method_is_opened>`
|
||
|
||
如果菜单当前已打开,则返回 ``true``\ 。
|
||
|
||
\ **注意:**\ 该方法仅在 macOS 上实现。
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_NativeMenu_method_is_system_menu:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
:ref:`bool<class_bool>` **is_system_menu**\ (\ rid\: :ref:`RID<class_RID>`\ ) |const| :ref:`🔗<class_NativeMenu_method_is_system_menu>`
|
||
|
||
如果全局菜单为特殊系统菜单则返回 ``true`` 。
|
||
|
||
\ **注意:**\ 该方法仅在 macOS 上实现。
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_NativeMenu_method_popup:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
|void| **popup**\ (\ rid\: :ref:`RID<class_RID>`, position\: :ref:`Vector2i<class_Vector2i>`\ ) :ref:`🔗<class_NativeMenu_method_popup>`
|
||
|
||
在屏幕坐标中的 ``position`` 处显示全局菜单。
|
||
|
||
\ **注意:**\ 该方法在 macOS 和 Windows 上实现。
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_NativeMenu_method_remove_item:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
|void| **remove_item**\ (\ rid\: :ref:`RID<class_RID>`, idx\: :ref:`int<class_int>`\ ) :ref:`🔗<class_NativeMenu_method_remove_item>`
|
||
|
||
从全局菜单 ``rid`` 中移除索引 ``idx`` 处的菜单项。
|
||
|
||
\ **注意:**\ 被移除菜单项之后的菜单项的索引将移动一格。
|
||
|
||
\ **注意:**\ 该方法在 macOS 和 Windows 上实现。
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_NativeMenu_method_set_interface_direction:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
|void| **set_interface_direction**\ (\ rid\: :ref:`RID<class_RID>`, is_rtl\: :ref:`bool<class_bool>`\ ) :ref:`🔗<class_NativeMenu_method_set_interface_direction>`
|
||
|
||
如果 ``is_rtl`` 为 ``true``\ ,则设置菜单文本布局方向为从右到左。
|
||
|
||
\ **注意:**\ 该方法在 macOS 和 Windows 上实现。
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_NativeMenu_method_set_item_accelerator:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
|void| **set_item_accelerator**\ (\ rid\: :ref:`RID<class_RID>`, idx\: :ref:`int<class_int>`, keycode\: :ref:`Key<enum_@GlobalScope_Key>`\ ) :ref:`🔗<class_NativeMenu_method_set_item_accelerator>`
|
||
|
||
设置索引为 ``idx`` 的菜单项的快捷键。\ ``keycode`` 可以是单一 :ref:`Key<enum_@GlobalScope_Key>`\ ,也可以是 :ref:`KeyModifierMask<enum_@GlobalScope_KeyModifierMask>` 和 :ref:`Key<enum_@GlobalScope_Key>` 用按位或操作进行的组合,例如 ``KEY_MASK_CTRL | KEY_A``\ (\ :kbd:`Ctrl + A`\ )。
|
||
|
||
\ **注意:**\ 该方法仅在 macOS 上实现。
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_NativeMenu_method_set_item_callback:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
|void| **set_item_callback**\ (\ rid\: :ref:`RID<class_RID>`, idx\: :ref:`int<class_int>`, callback\: :ref:`Callable<class_Callable>`\ ) :ref:`🔗<class_NativeMenu_method_set_item_callback>`
|
||
|
||
设置索引为 ``idx`` 的菜单项的回调。回调会在按下菜单项时发出。
|
||
|
||
\ **注意:**\ ``callback`` Callable 只接受一个 Variant 参数,传入 Callable 的参数是创建菜单项时传给 ``tag`` 参数的值。
|
||
|
||
\ **注意:**\ 该方法在 macOS 和 Windows 上实现。
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_NativeMenu_method_set_item_checkable:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
|void| **set_item_checkable**\ (\ rid\: :ref:`RID<class_RID>`, idx\: :ref:`int<class_int>`, checkable\: :ref:`bool<class_bool>`\ ) :ref:`🔗<class_NativeMenu_method_set_item_checkable>`
|
||
|
||
设置索引为 ``idx`` 的菜单项是否为复选框。如果为 ``false``\ ,则会将该菜单项的类型设置为纯文本。
|
||
|
||
\ **注意:**\ 该方法在 macOS 和 Windows 上实现。
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_NativeMenu_method_set_item_checked:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
|void| **set_item_checked**\ (\ rid\: :ref:`RID<class_RID>`, idx\: :ref:`int<class_int>`, checked\: :ref:`bool<class_bool>`\ ) :ref:`🔗<class_NativeMenu_method_set_item_checked>`
|
||
|
||
设置索引为 ``idx`` 的菜单项的勾选状态。
|
||
|
||
\ **注意:**\ 该方法在 macOS 和 Windows 上实现。
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_NativeMenu_method_set_item_disabled:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
|void| **set_item_disabled**\ (\ rid\: :ref:`RID<class_RID>`, idx\: :ref:`int<class_int>`, disabled\: :ref:`bool<class_bool>`\ ) :ref:`🔗<class_NativeMenu_method_set_item_disabled>`
|
||
|
||
启用/禁用索引为 ``idx`` 的菜单项。禁用状态下无法被选中,也无法激活动作。
|
||
|
||
\ **注意:**\ 该方法在 macOS 和 Windows 上实现。
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_NativeMenu_method_set_item_hidden:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
|void| **set_item_hidden**\ (\ rid\: :ref:`RID<class_RID>`, idx\: :ref:`int<class_int>`, hidden\: :ref:`bool<class_bool>`\ ) :ref:`🔗<class_NativeMenu_method_set_item_hidden>`
|
||
|
||
隐藏/显示索引为 ``idx`` 的菜单项。当它被隐藏时,项目不会出现在菜单中,并且无法调用其操作。
|
||
|
||
\ **注意:**\ 该方法仅在 macOS 上实现。
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_NativeMenu_method_set_item_hover_callbacks:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
|void| **set_item_hover_callbacks**\ (\ rid\: :ref:`RID<class_RID>`, idx\: :ref:`int<class_int>`, callback\: :ref:`Callable<class_Callable>`\ ) :ref:`🔗<class_NativeMenu_method_set_item_hover_callbacks>`
|
||
|
||
设置索引为 ``idx`` 的菜单项的回调。回调会在菜单项被悬停时发出。
|
||
|
||
\ **注意:**\ ``callback`` Callable 需要接受一个 Variant 参数,传入 Callable 的参数是创建菜单项时传给 ``tag`` 参数的值。
|
||
|
||
\ **注意:**\ 该方法仅在 macOS 上实现。
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_NativeMenu_method_set_item_icon:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
|void| **set_item_icon**\ (\ rid\: :ref:`RID<class_RID>`, idx\: :ref:`int<class_int>`, icon\: :ref:`Texture2D<class_Texture2D>`\ ) :ref:`🔗<class_NativeMenu_method_set_item_icon>`
|
||
|
||
替换指定索引 ``idx`` 的 :ref:`Texture2D<class_Texture2D>` 图标。
|
||
|
||
\ **注意:**\ 该方法在 macOS 和 Windows 上实现。
|
||
|
||
\ **注意:**\ macOS Dock 菜单项不支持该方法。
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_NativeMenu_method_set_item_indentation_level:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
|void| **set_item_indentation_level**\ (\ rid\: :ref:`RID<class_RID>`, idx\: :ref:`int<class_int>`, level\: :ref:`int<class_int>`\ ) :ref:`🔗<class_NativeMenu_method_set_item_indentation_level>`
|
||
|
||
设置索引为 ``idx`` 的菜单项的水平偏移量。
|
||
|
||
\ **注意:**\ 该方法仅在 macOS 上实现。
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_NativeMenu_method_set_item_key_callback:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
|void| **set_item_key_callback**\ (\ rid\: :ref:`RID<class_RID>`, idx\: :ref:`int<class_int>`, key_callback\: :ref:`Callable<class_Callable>`\ ) :ref:`🔗<class_NativeMenu_method_set_item_key_callback>`
|
||
|
||
设置索引为 ``idx`` 的菜单项的回调。回调会在激活快捷键时发出。
|
||
|
||
\ **注意:**\ ``key_callback`` Callable 只接受一个 Variant 参数,传入 Callable 的参数是创建菜单项时传给 ``tag`` 参数的值。
|
||
|
||
\ **注意:**\ 该方法仅在 macOS 上实现。
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_NativeMenu_method_set_item_max_states:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
|void| **set_item_max_states**\ (\ rid\: :ref:`RID<class_RID>`, idx\: :ref:`int<class_int>`, max_states\: :ref:`int<class_int>`\ ) :ref:`🔗<class_NativeMenu_method_set_item_max_states>`
|
||
|
||
设置多状态项的状态数。详见 :ref:`add_multistate_item<class_NativeMenu_method_add_multistate_item>`\ 。
|
||
|
||
\ **注意:**\ 该方法在 macOS 和 Windows 上实现。
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_NativeMenu_method_set_item_radio_checkable:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
|void| **set_item_radio_checkable**\ (\ rid\: :ref:`RID<class_RID>`, idx\: :ref:`int<class_int>`, checkable\: :ref:`bool<class_bool>`\ ) :ref:`🔗<class_NativeMenu_method_set_item_radio_checkable>`
|
||
|
||
将索引为 ``idx`` 的菜单项设置为单选按钮风格。如果为 ``false``\ ,则会将该菜单项的类型设置为纯文本。
|
||
|
||
\ **注意:**\ 仅为装饰作用;必须自行为单选组添加选中、取消选中的逻辑。
|
||
|
||
\ **注意:**\ 该方法在 macOS 和 Windows 上实现。
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_NativeMenu_method_set_item_state:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
|void| **set_item_state**\ (\ rid\: :ref:`RID<class_RID>`, idx\: :ref:`int<class_int>`, state\: :ref:`int<class_int>`\ ) :ref:`🔗<class_NativeMenu_method_set_item_state>`
|
||
|
||
设置多状态项的状态。详见 :ref:`add_multistate_item<class_NativeMenu_method_add_multistate_item>`\ 。
|
||
|
||
\ **注意:**\ 该方法在 macOS 和 Windows 上实现。
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_NativeMenu_method_set_item_submenu:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
|void| **set_item_submenu**\ (\ rid\: :ref:`RID<class_RID>`, idx\: :ref:`int<class_int>`, submenu_rid\: :ref:`RID<class_RID>`\ ) :ref:`🔗<class_NativeMenu_method_set_item_submenu>`
|
||
|
||
设置索引 ``idx`` 处菜单项的子菜单 RID。子菜单是一个全局菜单,点击该菜单项时将显示该菜单。
|
||
|
||
\ **注意:**\ 该方法在 macOS 和 Windows 上实现。
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_NativeMenu_method_set_item_tag:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
|void| **set_item_tag**\ (\ rid\: :ref:`RID<class_RID>`, idx\: :ref:`int<class_int>`, tag\: :ref:`Variant<class_Variant>`\ ) :ref:`🔗<class_NativeMenu_method_set_item_tag>`
|
||
|
||
设置指定菜单项的元数据,可以是任何类型。后续可以使用 :ref:`get_item_tag<class_NativeMenu_method_get_item_tag>` 获取,它提供了一种将上下文数据分配给项目的简单方式。
|
||
|
||
\ **注意:**\ 该方法在 macOS 和 Windows 上实现。
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_NativeMenu_method_set_item_text:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
|void| **set_item_text**\ (\ rid\: :ref:`RID<class_RID>`, idx\: :ref:`int<class_int>`, text\: :ref:`String<class_String>`\ ) :ref:`🔗<class_NativeMenu_method_set_item_text>`
|
||
|
||
设置索引为 ``idx`` 的菜单项的文本。
|
||
|
||
\ **注意:**\ 该方法在 macOS 和 Windows 上实现。
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_NativeMenu_method_set_item_tooltip:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
|void| **set_item_tooltip**\ (\ rid\: :ref:`RID<class_RID>`, idx\: :ref:`int<class_int>`, tooltip\: :ref:`String<class_String>`\ ) :ref:`🔗<class_NativeMenu_method_set_item_tooltip>`
|
||
|
||
设置索引为 ``idx`` 的菜单项的工具提示 :ref:`String<class_String>`\ 。
|
||
|
||
\ **注意:**\ 该方法仅在 macOS 上实现。
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_NativeMenu_method_set_minimum_width:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
|void| **set_minimum_width**\ (\ rid\: :ref:`RID<class_RID>`, width\: :ref:`float<class_float>`\ ) :ref:`🔗<class_NativeMenu_method_set_minimum_width>`
|
||
|
||
设置全局菜单的最小宽度。
|
||
|
||
\ **注意:**\ 该方法仅在 macOS 上实现。
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_NativeMenu_method_set_popup_close_callback:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
|void| **set_popup_close_callback**\ (\ rid\: :ref:`RID<class_RID>`, callback\: :ref:`Callable<class_Callable>`\ ) :ref:`🔗<class_NativeMenu_method_set_popup_close_callback>`
|
||
|
||
注册可调用函数,以在菜单即将显示时发出。
|
||
|
||
\ **注意:**\ 操作系统可以模拟菜单打开来跟踪菜单项更改和全局快捷键,在这种情况下不会触发相应的关闭回调。使用 :ref:`is_opened<class_NativeMenu_method_is_opened>` 检查菜单当前是否已打开。
|
||
|
||
\ **注意:**\ 该方法仅在 macOS 上实现。
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_NativeMenu_method_set_popup_open_callback:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
|void| **set_popup_open_callback**\ (\ rid\: :ref:`RID<class_RID>`, callback\: :ref:`Callable<class_Callable>`\ ) :ref:`🔗<class_NativeMenu_method_set_popup_open_callback>`
|
||
|
||
注册可调用函数以在菜单关闭后发出。
|
||
|
||
\ **注意:**\ 该方法仅在 macOS 上实现。
|
||
|
||
.. |virtual| replace:: :abbr:`virtual (本方法通常需要用户覆盖才能生效。)`
|
||
.. |const| replace:: :abbr:`const (本方法无副作用,不会修改该实例的任何成员变量。)`
|
||
.. |vararg| replace:: :abbr:`vararg (本方法除了能接受在此处描述的参数外,还能够继续接受任意数量的参数。)`
|
||
.. |constructor| replace:: :abbr:`constructor (本方法用于构造某个类型。)`
|
||
.. |static| replace:: :abbr:`static (调用本方法无需实例,可直接使用类名进行调用。)`
|
||
.. |operator| replace:: :abbr:`operator (本方法描述的是使用本类型作为左操作数的有效运算符。)`
|
||
.. |bitfield| replace:: :abbr:`BitField (这个值是由下列位标志构成位掩码的整数。)`
|
||
.. |void| replace:: :abbr:`void (无返回值。)`
|