PopupMenu

Успадковує: Popup < Window < Viewport < Node < Object

Модульне вікно, яке використовується для відображення списку варіантів.

Опис

PopupMenu є модним вікном, яке використовується для відображення списку варіантів. Корисне меню інструментів та контекстних меню.

Розмір PopupMenu може бути обмежений за допомогою Window.max_size. Якщо висота переліку товарів більша, ніж максимальна висота PopupMenu, ScrollContainer в межах спливаючих дозволить користувачеві прокрутити вміст. Якщо не встановлено максимальний розмір, або якщо вона встановлена до 0, висота PopupMenu буде обмежена його батьківщиною.

Всі set_* методи дозволяють індексувати негативний елемент, тобто -1 для доступу до останнього елемента -2 для вибору другого елемента, і так далі.

Incremental search: Подібно ItemList і Tree, PopupMenu підтримує пошук у списку, в той час як зосереджений контроль. Натисніть клавішу, яка відповідає першому листу назви пункту, щоб вибрати перший елемент, починаючи з даного листа. Після того, як точка, є два способи виконання вступного пошуку: 1) Натисніть той же ключ знову до закінчення часу, щоб вибрати наступний пункт, починаючи з того ж листа. 2) Натисніть клавіші літери, які відповідають решті слова перед тривалістю часу, щоб відповідати вибору пункту прямо. І з цих дій буде скидання на початок списку, якщо тривалість від’їзду з останнього ключа було зареєстровано. Ви можете налаштувати тривалість часу, змінивши ProjectSettings.gui/timers/incremental_search_max_interval_msec.

Примітка: Значення ідентифікатора, що використовуються для елементів, обмежені 32 бітами, не повні 64 біти int. Це має діапазон -2^32 до 2^32 - 1, тобто -2147483648 до 2147483647.

Властивості

bool

allow_search

true

bool

hide_on_checkable_item_selection

true

bool

hide_on_item_selection

true

bool

hide_on_state_item_selection

false

int

item_count

0

bool

prefer_native_menu

false

float

submenu_popup_delay

0.3

SystemMenus

system_menu_id

0

bool

transparent

true (overrides Window)

bool

transparent_bg

true (overrides Viewport)

Методи

bool

activate_item_by_event(event: InputEvent, for_global_only: bool = false)

void

add_check_item(label: String, id: int = -1, accel: Key = 0)

void

add_check_shortcut(shortcut: Shortcut, id: int = -1, global: bool = false)

void

add_icon_check_item(texture: Texture2D, label: String, id: int = -1, accel: Key = 0)

void

add_icon_check_shortcut(texture: Texture2D, shortcut: Shortcut, id: int = -1, global: bool = false)

void

add_icon_item(texture: Texture2D, label: String, id: int = -1, accel: Key = 0)

void

add_icon_radio_check_item(texture: Texture2D, label: String, id: int = -1, accel: Key = 0)

void

add_icon_radio_check_shortcut(texture: Texture2D, shortcut: Shortcut, id: int = -1, global: bool = false)

void

add_icon_shortcut(texture: Texture2D, shortcut: Shortcut, id: int = -1, global: bool = false, allow_echo: bool = false)

void

add_item(label: String, id: int = -1, accel: Key = 0)

void

add_multistate_item(label: String, max_states: int, default_state: int = 0, id: int = -1, accel: Key = 0)

void

add_radio_check_item(label: String, id: int = -1, accel: Key = 0)

void

add_radio_check_shortcut(shortcut: Shortcut, id: int = -1, global: bool = false)

void

add_separator(label: String = "", id: int = -1)

void

add_shortcut(shortcut: Shortcut, id: int = -1, global: bool = false, allow_echo: bool = false)

void

add_submenu_item(label: String, submenu: String, id: int = -1)

void

add_submenu_node_item(label: String, submenu: PopupMenu, id: int = -1)

void

clear(free_submenus: bool = false)

int

get_focused_item() const

Key

get_item_accelerator(index: int) const

AutoTranslateMode

get_item_auto_translate_mode(index: int) const

Texture2D

get_item_icon(index: int) const

int

get_item_icon_max_width(index: int) const

Color

get_item_icon_modulate(index: int) const

int

get_item_id(index: int) const

int

get_item_indent(index: int) const

int

get_item_index(id: int) const

String

get_item_language(index: int) const

Variant

get_item_metadata(index: int) const

int

get_item_multistate(index: int) const

int

get_item_multistate_max(index: int) const

Shortcut

get_item_shortcut(index: int) const

String

get_item_submenu(index: int) const

PopupMenu

get_item_submenu_node(index: int) const

String

get_item_text(index: int) const

TextDirection

get_item_text_direction(index: int) const

String

get_item_tooltip(index: int) const

bool

is_item_checkable(index: int) const

bool

is_item_checked(index: int) const

bool

is_item_disabled(index: int) const

bool

is_item_radio_checkable(index: int) const

bool

is_item_separator(index: int) const

bool

is_item_shortcut_disabled(index: int) const

bool

is_native_menu() const

bool

is_system_menu() const

void

remove_item(index: int)

void

scroll_to_item(index: int)

void

set_focused_item(index: int)

void

set_item_accelerator(index: int, accel: Key)

void

set_item_as_checkable(index: int, enable: bool)

void

set_item_as_radio_checkable(index: int, enable: bool)

void

set_item_as_separator(index: int, enable: bool)

void

set_item_auto_translate_mode(index: int, mode: AutoTranslateMode)

void

set_item_checked(index: int, checked: bool)

void

set_item_disabled(index: int, disabled: bool)

void

set_item_icon(index: int, icon: Texture2D)

void

set_item_icon_max_width(index: int, width: int)

void

set_item_icon_modulate(index: int, modulate: Color)

void

set_item_id(index: int, id: int)

void

set_item_indent(index: int, indent: int)

void

set_item_language(index: int, language: String)

void

set_item_metadata(index: int, metadata: Variant)

void

set_item_multistate(index: int, state: int)

void

set_item_multistate_max(index: int, max_states: int)

void

set_item_shortcut(index: int, shortcut: Shortcut, global: bool = false)

void

set_item_shortcut_disabled(index: int, disabled: bool)

void

set_item_submenu(index: int, submenu: String)

void

set_item_submenu_node(index: int, submenu: PopupMenu)

void

set_item_text(index: int, text: String)

void

set_item_text_direction(index: int, direction: TextDirection)

void

set_item_tooltip(index: int, tooltip: String)

void

toggle_item_checked(index: int)

void

toggle_item_multistate(index: int)

Властивості теми

Color

font_accelerator_color

Color(0.7, 0.7, 0.7, 0.8)

Color

font_color

Color(0.875, 0.875, 0.875, 1)

Color

font_disabled_color

Color(0.4, 0.4, 0.4, 0.8)

Color

font_hover_color

Color(0.875, 0.875, 0.875, 1)

Color

font_outline_color

Color(0, 0, 0, 1)

Color

font_separator_color

Color(0.875, 0.875, 0.875, 1)

Color

font_separator_outline_color

Color(0, 0, 0, 1)

int

h_separation

4

int

icon_max_width

0

int

indent

10

int

item_end_padding

2

int

item_start_padding

2

int

outline_size

0

int

separator_outline_size

0

int

v_separation

4

Font

font

Font

font_separator

int

font_separator_size

int

font_size

Texture2D

checked

Texture2D

checked_disabled

Texture2D

radio_checked

Texture2D

radio_checked_disabled

Texture2D

radio_unchecked

Texture2D

radio_unchecked_disabled

Texture2D

submenu

Texture2D

submenu_mirrored

Texture2D

unchecked

Texture2D

unchecked_disabled

StyleBox

hover

StyleBox

labeled_separator_left

StyleBox

labeled_separator_right

StyleBox

panel

StyleBox

separator


Сигнали

id_focused(id: int) 🔗

Випробувано, коли користувач навігував на предмет деяких id за допомогою ProjectSettings.input/ui_up або ProjectSettings.input/ui_down вхідних дій.


id_pressed(id: int) 🔗

Увімкнено, коли активовано пункт деяких id або його акселератор.

Примітка: Якщо id є негативним (наприклад, явно або через переповнення), це поверне відповідний індекс замість.


index_pressed(index: int) 🔗

Увімкнено, коли активовано пункт деяких index або його акселератор.


menu_changed() 🔗

При додаванні будь-якого виробу, змінного або видаленого.


Описи властивостей

  • void set_allow_search(value: bool)

  • bool get_allow_search()

Якщо true, дозволяє навігації PopupMenu з літерними ключами.


bool hide_on_checkable_item_selection = true 🔗

  • void set_hide_on_checkable_item_selection(value: bool)

  • bool is_hide_on_checkable_item_selection()

Якщо true, приховує PopupMenu, коли вибрано прапорець або кнопка радіо.


bool hide_on_item_selection = true 🔗

  • void set_hide_on_item_selection(value: bool)

  • bool is_hide_on_item_selection()

Якщо true, приховує PopupMenu, коли вибрано пункт.


bool hide_on_state_item_selection = false 🔗

  • void set_hide_on_state_item_selection(value: bool)

  • bool is_hide_on_state_item_selection()

Якщо true, приховує PopupMenu при виборі державного виробу.


int item_count = 0 🔗

  • void set_item_count(value: int)

  • int get_item_count()

Кількість елементів в даний час в списку.


bool prefer_native_menu = false 🔗

  • void set_prefer_native_menu(value: bool)

  • bool is_prefer_native_menu()

Якщо true, MenuBar буде використовувати рідне меню при підтриманні.

Note: Якщо PopupMenu зв'язується з StatusIndicator, MenuBar, або інший PopupMenu пункт, він може використовувати рідне меню незалежно від цього майна, використовувати is_native_menu() для його перевірки.


float submenu_popup_delay = 0.3 🔗

  • void set_submenu_popup_delay(value: float)

  • float get_submenu_popup_delay()

Налаштовує час затримки в секундах для підменю пункту, щоб попросити на мишці. Якщо у спливаючому меню додається дитина іншої (як підменю), вона буде спадковувати час затримки батьківського пункту меню.


SystemMenus system_menu_id = 0 🔗

Якщо встановити до одного з значень SystemMenus, це PopupMenu межує зі спеціальним меню системи. Тільки один PopupMenu може бути підключений до кожного спеціального меню одночасно.


Описи методів

bool activate_item_by_event(event: InputEvent, for_global_only: bool = false) 🔗

Перевіряє надану event проти ярликів й акселераторів у PopupMenu, а також активує перший елемент з відповідними подіями. Якщо for_global_only є true, тільки ярлики й акселератори з global встановлюються на true.

Повертає true, якщо елемент був успішно активований.

Примітка: Деякі Control, такі як MenuButton, викликають цей метод автоматично.


void add_check_item(label: String, id: int = -1, accel: Key = 0) 🔗

Додає новий елемент-прапорець з текстом label.

Можна також вказати id, а також акселератор accel. Якщо id не надано, то його буде створено з індексу. Якщо accel не надано, то значення за замовчуванням 0 (відповідно до @GlobalScope.KEY_NONE) буде призначено елементу (що позначає відсутність акселератора). Дивитись get_item_accelerator() для подробиць щодо акселераторів.

Примітка: Елементи-прапорці просто показують галочку, але не мають ніякої вбудованої поведінки щодо вмикання та вимикання, тому потребують робити це вручну. Дивитись set_item_checked() для додаткової інформації щодо того, як ними керувати.


void add_check_shortcut(shortcut: Shortcut, id: int = -1, global: bool = false) 🔗

Додає новий елемент-прапорець і призначає зазначений Shortcut. Встановлює текст до прапорця на назву Shortcut.

Можна також вказати id. Якщо id не надано, то його буде створено з індексу.

Примітка: Елементи-прапорці просто показують галочку, але не мають ніякої вбудованої поведінки щодо вмикання та вимикання, тому потребують робити це вручну. Дивитись set_item_checked() для додаткової інформації щодо того, як ними керувати.


void add_icon_check_item(texture: Texture2D, label: String, id: int = -1, accel: Key = 0) 🔗

Додає новий елемент-прапорець з текстом label та іконкою texture.

Можна також вказати id, а також акселератор accel. Якщо id не надано, то його буде створено з індексу. Якщо accel не надано, то значення за замовчуванням 0 (відповідно до @GlobalScope.KEY_NONE) буде призначено елементу (що позначає відсутність акселератора). Дивитись get_item_accelerator() для подробиць щодо акселераторів.

Примітка: Елементи-прапорці просто показують галочку, але не мають ніякої вбудованої поведінки щодо вмикання та вимикання, тому потребують робити це вручну. Дивитись set_item_checked() для додаткової інформації щодо того, як ними керувати.


void add_icon_check_shortcut(texture: Texture2D, shortcut: Shortcut, id: int = -1, global: bool = false) 🔗

Додає новий елемент-прапорець і призначає зазначений Shortcut та іконку texture. Встановлює текст до прапорця на назву Shortcut.

Можна також вказати id. Якщо id не надано, то його буде створено з індексу.

Примітка: Елементи-прапорці просто показують галочку, але не мають ніякої вбудованої поведінки щодо вмикання та вимикання, тому потребують робити це вручну. Дивитись set_item_checked() для додаткової інформації щодо того, як ними керувати.


void add_icon_item(texture: Texture2D, label: String, id: int = -1, accel: Key = 0) 🔗

Додавання нового елемента з текстом пам'ячим міткою та іконкою texture.

id може бути додатково, а також акселератор (accel). Якщо немає id, він буде створений з індексу. Якщо немає accel, то значення за замовчуванням 0 (відповідно до @GlobalScope.KEY_NONE) буде призначено до пункту (що означає, що він не має ніякого прискорювача). Детальніше про акселератори.


void add_icon_radio_check_item(texture: Texture2D, label: String, id: int = -1, accel: Key = 0) 🔗

Те саме, що й add_icon_check_item(), але використовує кнопку перемикання.


void add_icon_radio_check_shortcut(texture: Texture2D, shortcut: Shortcut, id: int = -1, global: bool = false) 🔗

Те саме, що й add_icon_check_shortcut(), але використовує кнопку перемикання.


void add_icon_shortcut(texture: Texture2D, shortcut: Shortcut, id: int = -1, global: bool = false, allow_echo: bool = false) 🔗

Додає новий елемент і призначає зазначений Shortcut і іконку текстура. Встановлює етикетку прапорця на назву Shortcut.

id може бути додатково. Якщо немає id, він буде створений з індексу.

Якщо allow_echo є true, то ярлик можна активувати з луновими подіями.


void add_item(label: String, id: int = -1, accel: Key = 0) 🔗

Додати новий елемент з текстом label.

id може бути додатково, а також акселератор (accel). Якщо немає id, він буде створений з індексу. Якщо немає accel, то значення за замовчуванням 0 (відповідно до @GlobalScope.KEY_NONE) буде призначено до пункту (що означає, що він не має ніякого прискорювача). Детальніше про акселератори.

Примітка: Надана id використовується тільки в id_pressed і id_focused сигнали. Це не пов'язано з index аргументи в e.g. set_item_checked().


void add_multistate_item(label: String, max_states: int, default_state: int = 0, id: int = -1, accel: Key = 0) 🔗

Додає новий елемент із кількома станами з текстом label.

На відміну від звичайних бінарних елементів, елементи з кількома станами можуть мати більше двох станів, як визначено max_states. Значення за замовчуванням визначається default_state.

Опціонально можна надати id, а також прискорювач (accel). Якщо id не вказано, його буде створено з індексу. Якщо accel не надано, тоді елементу буде призначено значення за замовчуванням 0 (що відповідає @GlobalScope.KEY_NONE) (це означає, що він не матиме прискорювача). Дивіться get_item_accelerator(), щоб дізнатися більше про прискорювачі.

func _ready():
    add_multistate_item("Елемент", 3, 0)

    index_pressed.connect(func(index: int):
            toggle_item_multistate(index)
            match get_item_multistate(index):
                0:
                    print("Перший стан")
                1:
                    print("Другий стан")
                2:
                    print("Третій стан")
        )

Примітка. Елементи з кількома станами не оновлюють свій стан автоматично, це потрібно робити вручну. Перегляньте toggle_item_multistate(), set_item_multistate() і get_item_multistate(), щоб дізнатися більше про те, як ним керувати.


void add_radio_check_item(label: String, id: int = -1, accel: Key = 0) 🔗

Додає нову радіокнопку з текстом label.

Можна також вказати id, а також акселератор accel. Якщо id не надано, то його буде створено з індексу. Якщо accel не надано, то значення за замовчуванням 0 (відповідно до @GlobalScope.KEY_NONE) буде призначено елементу (що позначає відсутність акселератора). Дивитись get_item_accelerator() для подробиць щодо акселераторів.

Примітка: Елементи-прапорці просто показують галочку, але не мають ніякої вбудованої поведінки щодо вмикання та вимикання, тому потребують робити це вручну. Дивитись set_item_checked() для додаткової інформації щодо того, як ними керувати.


void add_radio_check_shortcut(shortcut: Shortcut, id: int = -1, global: bool = false) 🔗

Додає нову радіокнопку і призначає зазначений Shortcut. Встановлює текст до прапорця на назву Shortcut.

Можна також вказати id. Якщо id не надано, то його буде створено з індексу.

Примітка: Елементи-прапорці просто показують галочку, але не мають ніякої вбудованої поведінки щодо вмикання та вимикання, тому потребують робити це вручну. Дивитись set_item_checked() для додаткової інформації щодо того, як ними керувати.


void add_separator(label: String = "", id: int = -1) 🔗

Додавання сепаратора між предметами. Сепаратори також займають індекс, який можна встановити за допомогою параметра id.

label може бути надана додатково, яка з'явиться в центрі сепаратора.


void add_shortcut(shortcut: Shortcut, id: int = -1, global: bool = false, allow_echo: bool = false) 🔗

Додати Shortcut.

id може бути додатково. Якщо немає id, він буде створений з індексу.

Якщо allow_echo є true, ярлик можна активувати з луновими подіями.


void add_submenu_item(label: String, submenu: String, id: int = -1) 🔗

Застаріло: Prefer using add_submenu_node_item() instead.

Додає елемент, який буде діяти як підменю батьківського вузла PopupMenu при натисканні. submenu аргумент повинен бути ім'ям існуючого PopupMenu, який було додано в якості дитини в цей вузол. Цей субмену буде показано, коли елемент натискається, переповнений протягом тривалого часу або активований за допомогою ui_select або ui_right вхідних дій.

id може бути додатково. Якщо немає id, він буде створений з індексу.


void add_submenu_node_item(label: String, submenu: PopupMenu, id: int = -1) 🔗

Додає елемент, який буде діяти як підменю батьківського вузла PopupMenu при натисканні. Цей субмену буде показано, коли елемент натискається, переповнений протягом тривалого часу або активований за допомогою ui_select або ui_right вхідні дії.

submenu повинен бути або дитина цього PopupMenu або не має материнського вузла (в якому випадку він буде автоматично додано як дитина). Якщо у submenu popup є інший батько, цей метод не буде.

id може бути додатково. Якщо немає id, він буде створений з індексу.


void clear(free_submenus: bool = false) 🔗

Видаляє всі елементи з PopupMenu. Якщо free_submenus є true, вузли підменю автоматично звільняються.


int get_focused_item() const 🔗

Повернення індексу вказаного елемента. Повертає -1, якщо не фокусується предмет.


Key get_item_accelerator(index: int) const 🔗

Повернення акселератора пункту на даній index. Акселератор - це клавішний ярлик, який можна натиснути, щоб запустити меню, навіть якщо це не відкрито. Значення повернення є ціле, яке, як правило, поєднання KeyModifierMasks і Keys using bitwise OR, такі як KEY_MASK_CTRL KEY_A (Ctrl + A). Якщо не визначено акселератор для вказаного index, get_item_accelerator() повертає 0 (constant @GlobalScope.KEY_NONE]).


AutoTranslateMode get_item_auto_translate_mode(index: int) const 🔗

Повертає режим автоматичного перекладання елемента за заданим index.


Texture2D get_item_icon(index: int) const 🔗

Повертає значок елемента на даному index.


int get_item_icon_max_width(index: int) const 🔗

Повертаємо максимальну допустиму ширину ікони для пункту наведено index.


Color get_item_icon_modulate(index: int) const 🔗

Повертаємо іконку Color, що модулює іконку елемента на даній index.


int get_item_id(index: int) const 🔗

Повернутися до ID пункту на даній index. id може бути вручну, при цьому індекс не може.


int get_item_indent(index: int) const 🔗

Повертаємо горизонтальний зсув елемента на даній index.


int get_item_index(id: int) const 🔗

Повертає індекс елемента, що містить зазначений id. Індекс автоматично призначається кожному елементу двигуном і не можна встановлювати вручну.


String get_item_language(index: int) const 🔗

Повертає код мови тексту елемента.


Variant get_item_metadata(index: int) const 🔗

Повернення метаданих зазначеного елемента, який може бути будь-яким типом. Ви можете встановити його з set_item_metadata(), що забезпечує простий спосіб присвоєння контекстних даних до предметів.


int get_item_multistate(index: int) const 🔗

Повертає стан елемента у даному index.


int get_item_multistate_max(index: int) const 🔗

Повертаємо максимальні стани пункту на даній index.


Shortcut get_item_shortcut(index: int) const 🔗

Повертаємо Shortcut, пов'язану з пунктом на даній index.


String get_item_submenu(index: int) const 🔗

Застаріло: Prefer using get_item_submenu_node() instead.

Повертає назву підменю елемента за заданим index. Див. add_submenu_item() для отримання додаткової інформації про те, як додати підменю.


PopupMenu get_item_submenu_node(index: int) const 🔗

Повертає підменю елемента за заданим index або null, якщо підменю не було додано. Див. add_submenu_node_item() для отримання додаткової інформації про те, як додати підменю.


String get_item_text(index: int) const 🔗

Повертає текст елементу на даному index.


TextDirection get_item_text_direction(index: int) const 🔗

Повертає напрямок написання тексту елемента.


String get_item_tooltip(index: int) const 🔗

Повертає інструмент, пов'язаний з пунктом наведено index.


bool is_item_checkable(index: int) const 🔗

Повертає true, якщо елемент на index можна обрати, тобто якщо він є прапорцем чи радіокнопкою.

Примітка: Елементи-прапорці просто показують галочку, але не мають ніякої вбудованої поведінки щодо вмикання та вимикання, тому потребують робити це вручну.


bool is_item_checked(index: int) const 🔗

Повертаємо true, якщо пункт надана index перевіряється.


bool is_item_disabled(index: int) const 🔗

Повертає true, якщо товар на даному index вимкнено. Коли його вимкнено, він не може бути обраний, а його дія — викликана.

Дивитися set_item_disabled() для подробиць про те, як вимкнути елемент.


bool is_item_radio_checkable(index: int) const 🔗

Повертаємо true, якщо пункт надана index має можливість перевірки відповідності радіоносія.

Примітка: Це чисто косметичний, необхідно додати логіку для перевірки/розшуку предметів в радіо групах.


bool is_item_separator(index: int) const 🔗

Повертаємо true, якщо елемент є сепаратором. Якщо це буде показано як рядок. Детальніше про те, як додати сепаратор.


bool is_item_shortcut_disabled(index: int) const 🔗

Повертаємо true, якщо позначений пункт вимкнено.


bool is_native_menu() const 🔗

Повертає true, якщо надана система підтримується і в даний час використовується цей PopupMenu.


bool is_system_menu() const 🔗

Повернення true, якщо меню підключено до спеціального меню системи.


void remove_item(index: int) 🔗

Видаліть пункт у даній index з меню.

Примітка: Індикатори елементів після вилученого елемента будуть переміщені одним.


void scroll_to_item(index: int) 🔗

Переміщує вид з прокруткою, щоб зробити елемент у позиції index видимим.


void set_focused_item(index: int) 🔗

Встановлює поточний сфокусований елемент, як зазначений index.

Передача -1 як індексу робить так, що жоден елемент не фокусується.


void set_item_accelerator(index: int, accel: Key) 🔗

Встановлює акселератор елемента на даній index. Акселератор - це клавішний ярлик, який можна натиснути, щоб запустити меню, навіть якщо це не відкрито. accel, як правило, поєднання KeyModifierMasks and Keys using bitwise OR: KEY_MASK_CTRL KEY_A (Ctrl + A).


void set_item_as_checkable(index: int, enable: bool) 🔗

Установлює, чи елемент на index має прапорець. Якщо false, установлює тип елемента на звичайний текст.

Примітка: Елементи-прапорці просто показують галочку, але не мають ніякої вбудованої поведінки щодо вмикання та вимикання, тому потребують робити це вручну.


void set_item_as_radio_checkable(index: int, enable: bool) 🔗

Встановлює тип елемента на даній index на радіокнопці. Якщо false, встановлюємо тип пункту на звичайний текст.


void set_item_as_separator(index: int, enable: bool) 🔗

Позначити елемент на даній index як сепаратор, який означає, що він буде відображатися як рядок. Якщо false, встановлюємо тип елемента на звичайний текст.


void set_item_auto_translate_mode(index: int, mode: AutoTranslateMode) 🔗

Встановлює режим автоматичного перекладу елемента за заданим index.

Елементи використовують Node.AUTO_TRANSLATE_MODE_INHERIT за замовчуванням, який використовує той самий режим автоматичного перекладу, що й сам PopupMenu.


void set_item_checked(index: int, checked: bool) 🔗

Налаштовує статус контрольного стану елемента на даній index.


void set_item_disabled(index: int, disabled: bool) 🔗

Увімкнути/вимкнути елемент у даному index. Коли він вимкнений, він не може бути обраний і його дія не може бути викликана.


void set_item_icon(index: int, icon: Texture2D) 🔗

Замінює іконку Texture2D на даній index.


void set_item_icon_max_width(index: int, width: int) 🔗

Встановлюємо максимальну допустиму ширину ікони для елемента на даній index. Цей ліміт наноситься зверху за замовчуванням, розмір іконки і зверху icon_max_width. Висота регульована відповідно до співвідношення ікони.


void set_item_icon_modulate(index: int, modulate: Color) 🔗

Встановлює модулюючу іконку елемента на даній index.


void set_item_id(index: int, id: int) 🔗

Встановіть id пункту наведено index.

id використовується в id_pressed і id_focused сигнали.


void set_item_indent(index: int, indent: int) 🔗

Встановлює горизонтальний зсув елемента на даній index.


void set_item_language(index: int, language: String) 🔗

Налаштовує мовний код текста, який використовується для алгоритмів розбиття та формування тексту, якщо використовується лівий порожній струм.


void set_item_metadata(index: int, metadata: Variant) 🔗

Встановлює метадані елемента, який може бути будь-яким типом. Ви можете отримати його за допомогою get_item_metadata(), який забезпечує простий спосіб присвоєння контекстних даних до предметів.


void set_item_multistate(index: int, state: int) 🔗

Встановлює стан багатодержавного елемента. Див. add_multistate_item() для деталей.


void set_item_multistate_max(index: int, max_states: int) 🔗

Налаштовує максимальні стани багатодержавного елемента. Див. add_multistate_item() для деталей.


void set_item_shortcut(index: int, shortcut: Shortcut, global: bool = false) 🔗

Встановіть Shortcut для пункту наведено index.


void set_item_shortcut_disabled(index: int, disabled: bool) 🔗

Вимкнено Shortcut пункту на даній index.


void set_item_submenu(index: int, submenu: String) 🔗

Застаріло: Prefer using set_item_submenu_node() instead.

Встановлює субмену пункту на даній index. Підменю є ім'я дитини PopupMenu вузол, який буде показано, коли пункт натискається.


void set_item_submenu_node(index: int, submenu: PopupMenu) 🔗

Встановлює субмену пункту на даній index. Підмену є вузол PopupMenu, який буде показано, коли пункт натискається. Щоб бути дитиною цього PopupMenu або не має батьків (в якому випадку вона буде автоматично додана як дитина). Якщо у submenu popup є інший батько, цей метод не буде.


void set_item_text(index: int, text: String) 🔗

Встановлює текст елемента на даному index.


void set_item_text_direction(index: int, direction: TextDirection) 🔗

Встановлює напрямок написання тексту елемента.


void set_item_tooltip(index: int, tooltip: String) 🔗

Налаштовує String інструментарій пункту на даній index.


void toggle_item_checked(index: int) 🔗

Вимкнено контрольний стан пункту за вказаною index.


void toggle_item_multistate(index: int) 🔗

Цикл до наступного стану багатодержавного елемента. Див. add_multistate_item() для деталей.


Описи тематичної нерухомості

Color font_accelerator_color = Color(0.7, 0.7, 0.7, 0.8) 🔗

Текст Color використовується для ярликів та акселераторів, які відображають назву меню при визначенні. Детальніше про акселератори.


Color font_color = Color(0.875, 0.875, 0.875, 1) 🔗

Текст за замовчуванням Color для імен меню.


Color font_disabled_color = Color(0.4, 0.4, 0.4, 0.8) 🔗

Color використовується для текстового меню вимкнено.


Color font_hover_color = Color(0.875, 0.875, 0.875, 1) 🔗

Color використовується для переповненого тексту.


Color font_outline_color = Color(0, 0, 0, 1) 🔗

Вміст текстового контуру меню.


Color font_separator_color = Color(0.875, 0.875, 0.875, 1) 🔗

Color використовується для текстових сепараторів етикетки. Див. add_separator().


Color font_separator_outline_color = Color(0, 0, 0, 1) 🔗

Розмітка текстового контуру маркованого сепаратора.


int h_separation = 4 🔗

Горизонтальний простір між елементами виробу.


int icon_max_width = 0 🔗

Максимальна допустима ширина іконки елемента. Цей ліміт наноситься зверху за замовчуванням, розмір іконки, але перед значенням, встановленим set_item_icon_max_width(). Висота регульована відповідно до співвідношення ікони.


int indent = 10 🔗

Ширина одного рівня відступу.


int item_end_padding = 2 🔗

Горизонтальний натяг з правом предметів (або зліва, в макеті RTL).


int item_start_padding = 2 🔗

Горизонтальний наповнювач зліва від елементів (або праворуч, в макеті RTL).


int outline_size = 0 🔗

Розмір контуру пункту.

Примітка: Якщо за допомогою шрифту FontFile.multiканал_signed_distance_field ввімкнено, його FontFile.msdf_pixel_range необхідно встановити принаймні twice значення index_size для позначення, що дає змогу виглядати правильно. В іншому випадку контур може з'явитися, щоб зрізати раніше, ніж призначений.


int separator_outline_size = 0 🔗

Розмір наклеєного сепаратора текстового контуру.


int v_separation = 4 🔗

Вертикальний простір між кожним пунктом меню.


Font font 🔗

Font використовується для елементів меню.


Font font_separator 🔗

Font використовується для позначеного роздільника.


int font_separator_size 🔗

Розмір шрифту маркованого сепаратора.


int font_size 🔗

Розмір шрифту меню.


Texture2D checked 🔗

Texture2D іконка для зареєстрованих елементів прапорця.


Texture2D checked_disabled 🔗

Texture2D значок для зареєстрованих елементів прапорця, коли вони вимкнені.


Texture2D radio_checked 🔗

Texture2D іконка для зареєстрованих радіоносіях.


Texture2D radio_checked_disabled 🔗

Texture2D значок для зареєстрованих радіоносіях, коли вони вимкнені.


Texture2D radio_unchecked 🔗

Texture2D іконка для штампованих радіоносіях.


Texture2D radio_unchecked_disabled 🔗

Texture2D іконка для знімних радіоносіях, коли вони вимкнені.


Texture2D submenu 🔗

Texture2D іконка для підменю стріли (для лівих макетів).


Texture2D submenu_mirrored 🔗

Texture2D іконка для підменю стріли (для правого розташування макетів).


Texture2D unchecked 🔗

Texture2D іконка для штампованих елементів прапорця.


Texture2D unchecked_disabled 🔗

Texture2D іконка для оглянутих елементів прапорця, коли вони вимкнені.


StyleBox hover 🔗

StyleBox відображається, коли елемент PopupMenu передається.


StyleBox labeled_separator_left 🔗

StyleBox на ліву сторону маркованого сепаратора. Див. add_separator().


StyleBox labeled_separator_right 🔗

StyleBox для правої сторони маркованого сепаратора. Див. add_separator().


StyleBox panel 🔗

StyleBox для фонової панелі.


StyleBox separator 🔗

StyleBox використовується для сепараторів. Див. add_separator().