PopupMenu¶
继承¶
Popup
简要描述¶
PopupMenu用于显示选项列表。
描述¶
成员¶
| 类型 | 属性名 | 默认值 |
|---|---|---|
| bool | allow_search | false |
| int | focus_mode | 2 |
| bool | hide_on_checkable_item_selection | true |
| bool | hide_on_item_selection | true |
| bool | hide_on_state_item_selection | false |
| float | submenu_popup_delay | 0.3 |
方法¶
| 返回值类型 | 方法名称 |
|---|---|
| void | add_check_item(label: String, id: int = -1, accel: int = 0) |
| void | add_check_shortcut(shortcut: ShortCut, id: int = -1, global: bool = false) |
| void | add_icon_check_item(texture: Texture, label: String, id: int = -1, accel: int = 0) |
| void | add_icon_check_shortcut(texture: Texture, shortcut: ShortCut, id: int = -1, global: bool = false) |
| void | add_icon_item(texture: Texture, label: String, id: int = -1, accel: int = 0) |
| void | add_icon_radio_check_item(texture: Texture, label: String, id: int = -1, accel: int = 0) |
| void | add_icon_radio_check_shortcut(texture: Texture, shortcut: ShortCut, id: int = -1, global: bool = false) |
| void | add_icon_shortcut(texture: Texture, shortcut: ShortCut, id: int = -1, global: bool = false) |
| void | add_item(label: String, id: int = -1, accel: int = 0) |
| void | add_multistate_item(label: String, max_states: int, default_state: int = 0, id: int = -1, accel: int = 0) |
| void | add_radio_check_item(label: String, id: int = -1, accel: int = 0) |
| void | add_radio_check_shortcut(shortcut: ShortCut, id: int = -1, global: bool = false) |
| void | add_separator(label: String = "") |
| void | add_shortcut(shortcut: ShortCut, id: int = -1, global: bool = false) |
| void | add_submenu_item(label: String, submenu: String, id: int = -1) |
| void | clear() |
| int | get_item_accelerator(idx: int) const |
| int | get_item_count() const |
| Texture | get_item_icon(idx: int) const |
| int | get_item_id(idx: int) const |
| int | get_item_index(id: int) const |
| Variant | get_item_metadata(idx: int) const |
| ShortCut | get_item_shortcut(idx: int) const |
| String | get_item_submenu(idx: int) const |
| String | get_item_text(idx: int) const |
| String | get_item_tooltip(idx: int) const |
| bool | is_hide_on_window_lose_focus() const |
| bool | is_item_checkable(idx: int) const |
| bool | is_item_checked(idx: int) const |
| bool | is_item_disabled(idx: int) const |
| bool | is_item_radio_checkable(idx: int) const |
| bool | is_item_separator(idx: int) const |
| bool | is_item_shortcut_disabled(idx: int) const |
| void | remove_item(idx: int) |
| void | set_hide_on_window_lose_focus(enable: bool) |
| void | set_item_accelerator(idx: int, accel: int) |
| void | set_item_as_checkable(idx: int, enable: bool) |
| void | set_item_as_radio_checkable(idx: int, enable: bool) |
| void | set_item_as_separator(idx: int, enable: bool) |
| void | set_item_checked(idx: int, checked: bool) |
| void | set_item_disabled(idx: int, disabled: bool) |
| void | set_item_icon(idx: int, icon: Texture) |
| void | set_item_id(idx: int, id: int) |
| void | set_item_metadata(idx: int, metadata: Variant) |
| void | set_item_multistate(idx: int, state: int) |
| void | set_item_shortcut(idx: int, shortcut: ShortCut, global: bool = false) |
| void | set_item_shortcut_disabled(idx: int, disabled: bool) |
| void | set_item_submenu(idx: int, submenu: String) |
| void | set_item_text(idx: int, text: String) |
| void | set_item_tooltip(idx: int, tooltip: String) |
| void | toggle_item_checked(idx: int) |
| void | toggle_item_multistate(idx: int) |
信号¶
- id_focused
当用户使用ui_up或ui_down操作导航到某个id的项目时发出。
- id_pressed
当按下某个id的项目或激活其加速器时发出。
- index_pressed
当按下某个index的项目或激活其加速器时发出。
常量¶
成员说明¶
- bool allow_search
| Default | false |
|---|---|
| setter | set_allow_search(value) |
| getter | get_allow_search |
- int focus_mode
| Default | 2 |
|---|---|
| setter | set_focus_mode(value) |
| getter | get_focus_mode |
- bool hide_on_checkable_item_selection
| Default | true |
|---|---|
| setter | set_hide_on_checkable_item_selection(value) |
| getter | is_hide_on_checkable_item_selection |
- bool hide_on_item_selection
| Default | true |
|---|---|
| setter | set_hide_on_item_selection(value) |
| getter | is_hide_on_item_selection |
- bool hide_on_state_item_selection
| Default | false |
|---|---|
| setter | set_hide_on_state_item_selection(value) |
| getter | is_hide_on_state_item_selection |
- float
| Default | 0.3 |
|---|---|
| setter | set_submenu_popup_delay(value) |
| getter | get_submenu_popup_delay |
方法说明¶
- add_check_item add_check_item(label: String, id: int = -1, accel: int = 0)
添加带有文本label的新可检查项。
可以选择提供id以及加速器(accel)。
**注意:**可检查项仅显示一个选中标记,但没有任何内置检查行为,必须手动检查/取消检查。
- add_check_shortcut add_check_shortcut(shortcut: ShortCut, id: int = -1, global: bool = false)
添加一个新的可检查项,并为其指定指定的ShortCut。
可以选择提供id。
**注意:**可检查项仅显示一个选中标记,但没有任何内置检查行为,必须手动检查/取消检查。
- add_icon_check_item add_icon_check_item(texture: Texture, label: String, id: int = -1, accel: int = 0)
添加带有文本label和图标texture的新可检查项。
可以选择提供id以及加速器(accel)。
**注意:**可检查项仅显示一个选中标记,但没有任何内置检查行为,必须手动检查/取消检查。
- add_icon_check_shortcut add_icon_check_shortcut(texture: Texture, shortcut: ShortCut, id: int = -1, global: bool = false)
添加一个新的可检查项,并为其指定指定的ShortCut和图标纹理。
可以选择提供id。
**注意:**可检查项仅显示一个选中标记,但没有任何内置检查行为,必须手动检查/取消检查。
- add_icon_item add_icon_item(texture: Texture, label: String, id: int = -1, accel: int = 0)
添加带有文本label和图标texture的新项目。
可以选择提供id以及加速器(accel)。
- add_icon_radio_check_item add_icon_radio_check_item(texture: Texture, label: String, id: int = -1, accel: int = 0)
与add_icon_check_item相同,但使用单选按钮。
- add_icon_radio_check_shortcut add_icon_radio_check_shortcut(texture: Texture, shortcut: ShortCut, id: int = -1, global: bool = false)
与add_icon_check_shortcut相同,但使用单选按钮。
- add_icon_shortcut add_icon_shortcut(texture: Texture, shortcut: ShortCut, id: int = -1, global: bool = false)
添加一个新项目,并为其指定指定的ShortCut和图标纹理。
可以选择提供id。
- add_item add_item(label: String, id: int = -1, accel: int = 0)
添加带有文本label的新项目。
可以选择提供id以及加速器(accel)。
- add_multistate_item add_multistate_item(label: String, max_states: int, default_state: int = 0, id: int = -1, accel: int = 0)
添加带有文本label的新的多状态项。
与普通的二进制项相反,多状态项可以具有两个以上的状态,如max_states所定义。
可以选择提供id以及加速器(accel)。
- add_radio_check_item add_radio_check_item(label: String, id: int = -1, accel: int = 0)
添加一个新的单选按钮,其文本为label。
可以选择提供id以及加速器(accel)。
**注意:**可检查项仅显示一个选中标记,但没有任何内置检查行为,必须手动检查/取消检查。
- add_radio_check_shortcut add_radio_check_shortcut(shortcut: ShortCut, id: int = -1, global: bool = false)
添加一个新的单选按钮,并为其分配一个ShortCut。
可以选择提供id。
**注意:**可检查项仅显示一个选中标记,但没有任何内置检查行为,必须手动检查/取消检查。
- add_separator add_separator(label: String = "")
在项目之间添加分隔符。
- add_shortcut add_shortcut(shortcut: ShortCut, id: int = -1, global: bool = false)
添加[快捷方式]。
可以选择提供id。
- add_submenu_item (label: String, submenu: String, id: int = -1)
添加一个项目,该项目将在单击时充当父PopupMenu节点的子菜单。
可以选择提供id。
- clear clear()
从PopupMenu中删除所有项目。
- get_item_accelerator get_item_accelerator(idx: int) const
返回索引为idx的项目的加速器。
- get_item_count get_item_count() const
返回PopupMenu中的项目数。
- get_item_icon get_item_icon(idx: int) const
返回索引为idx的项目的图标。
- get_item_id get_item_id(idx: int) const
返回索引为idx的项目的ID。
- get_item_index get_item_index(id: int) const
返回包含指定id的项目的索引。
- get_item_metadata get_item_metadata(idx: int) const
返回指定项目的元数据,该元数据可以是任何类型。
- get_item_shortcut get_item_shortcut(idx: int) const
返回与指定的idx项目关联的ShortCut。
- get_item_submenu (idx: int) const
返回索引为idx的项目的子菜单名称。
- get_item_text get_item_text(idx: int) const
返回索引为idx的项目的文本。
- get_item_tooltip get_item_tooltip(idx: int) const
返回与指定索引索引idx关联的工具提示。
- is_hide_on_window_lose_focus is_hide_on_window_lose_focus() const
如果弹出窗口在窗口是否失去焦点时将被隐藏,则返回true。
- is_item_checkable is_item_checkable(idx: int) const
如果索引idx上的项目可以某种方式检查,即是否具有复选框或单选按钮,则返回true。
**注意:**可检查项仅显示一个选中标记或单选按钮,但没有任何内置检查行为,必须手动检查/取消检查。
- is_item_checked is_item_checked(idx: int) const
如果选中索引为idx的项,则返回true。
- is_item_disabled is_item_disabled(idx: int) const
如果索引idx处的项目被禁用,则返回true。
有关如何禁用项目的更多信息,请参见set_item_disabled。
- is_item_radio_checkable is_item_radio_checkable(idx: int) const
如果索引为idx的项目具有单选按钮样式的可检查性,则返回true。
**注意:**这纯粹是化妆品;
- is_item_separator is_item_separator(idx: int) const
如果该项是分隔符,则返回true。
- is_item_shortcut_disabled is_item_shortcut_disabled(idx: int) const
如果指定项目的快捷方式被禁用,则返回true。
- remove_item remove_item(idx: int)
从菜单中删除索引为idx的项目。
**注意:**删除的项目之后的项目索引将移动一。
- set_hide_on_window_lose_focus set_hide_on_window_lose_focus(enable: bool)
窗口失去焦点时隐藏PopupMenu。
- set_item_accelerator set_item_accelerator(idx: int, accel: int)
在索引idx处设置项目的加速器。
- set_item_as_checkable set_item_as_checkable(idx: int, enable: bool)
设置索引idx处的项目是否具有复选框。
**注意:**可检查项仅显示一个选中标记,但没有任何内置检查行为,必须手动检查/取消检查。
- set_item_as_radio_checkable set_item_as_radio_checkable(idx: int, enable: bool)
将指定索引idx上的项目类型设置为单选按钮。
- set_item_as_separator set_item_as_separator(idx: int, enable: bool)
将索引idx处的项目标记为分隔符,这意味着它将显示为一行。
- set_item_checked set_item_checked(idx: int, checked: bool)
在索引idx处设置项目的检查状态。
- set_item_disabled set_item_disabled(idx: int, disabled: bool)
启用/禁用索引为idx的项目。
- set_item_icon set_item_icon(idx: int, icon: Texture)
替换指定的idx的Texture图标。
- set_item_id set_item_id(idx: int, id: int)
将项目的id设置为索引idx。
- set_item_metadata set_item_metadata(idx: int, metadata: Variant)
设置项目的元数据,该元数据可以是任何类型。
- set_item_multistate set_item_multistate(idx: int, state: int)
设置多状态项目的状态。
- set_item_shortcut set_item_shortcut(idx: int, shortcut: ShortCut, global: bool = false)
为指定的项目idx设置ShortCut。
- set_item_shortcut_disabled set_item_shortcut_disabled(idx: int, disabled: bool)
禁用指定索引idx的ShortCut。
- set_item_submenu (idx: int, submenu: String)
在索引idx处设置项目的子菜单。
- set_item_text set_item_text(idx: int, text: String)
将项目的文本设置为索引idx。
- set_item_tooltip set_item_tooltip(idx: int, tooltip: String)
将项目的String工具提示设置为指定的索引idx。
- toggle_item_checked toggle_item_checked(idx: int)
切换指定索引idx的项目的检查状态。
- toggle_item_multistate toggle_item_multistate(idx: int)
循环到多状态项目的下一个状态。