Attention: Here be dragons

This is the latest (unstable) version of this documentation, which may document features not available in or compatible with released stable versions of Godot.

TabBar

Успадковує: Control < CanvasItem < Node < Object

Контроль, що забезпечує горизонтальний брус з вкладками.

Опис

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

Властивості

bool

clip_tabs

true

bool

close_with_middle_mouse

true

int

current_tab

-1

bool

deselect_enabled

false

bool

drag_to_rearrange_enabled

false

FocusMode

focus_mode

2 (overrides Control)

int

max_tab_width

0

bool

scroll_to_selected

true

bool

scrolling_enabled

true

bool

select_with_rmb

false

bool

switch_on_drag_hover

true

AlignmentMode

tab_alignment

0

CloseButtonDisplayPolicy

tab_close_display_policy

0

int

tab_count

0

bool

tab_{index}/disabled

false

Texture2D

tab_{index}/icon

String

tab_{index}/title

""

String

tab_{index}/tooltip

""

int

tabs_rearrange_group

-1

Методи

void

add_tab(title: String = "", icon: Texture2D = null)

void

clear_tabs()

void

ensure_tab_visible(idx: int)

bool

get_offset_buttons_visible() const

int

get_previous_tab() const

Texture2D

get_tab_button_icon(tab_idx: int) const

Texture2D

get_tab_icon(tab_idx: int) const

int

get_tab_icon_max_width(tab_idx: int) const

int

get_tab_idx_at_point(point: Vector2) const

String

get_tab_language(tab_idx: int) const

Variant

get_tab_metadata(tab_idx: int) const

int

get_tab_offset() const

Rect2

get_tab_rect(tab_idx: int) const

TextDirection

get_tab_text_direction(tab_idx: int) const

String

get_tab_title(tab_idx: int) const

String

get_tab_tooltip(tab_idx: int) const

bool

is_tab_disabled(tab_idx: int) const

bool

is_tab_hidden(tab_idx: int) const

void

move_tab(from: int, to: int)

void

remove_tab(tab_idx: int)

bool

select_next_available()

bool

select_previous_available()

void

set_tab_button_icon(tab_idx: int, icon: Texture2D)

void

set_tab_disabled(tab_idx: int, disabled: bool)

void

set_tab_hidden(tab_idx: int, hidden: bool)

void

set_tab_icon(tab_idx: int, icon: Texture2D)

void

set_tab_icon_max_width(tab_idx: int, width: int)

void

set_tab_language(tab_idx: int, language: String)

void

set_tab_metadata(tab_idx: int, metadata: Variant)

void

set_tab_text_direction(tab_idx: int, direction: TextDirection)

void

set_tab_title(tab_idx: int, title: String)

void

set_tab_tooltip(tab_idx: int, tooltip: String)

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

Color

drop_mark_color

Color(1, 1, 1, 1)

Color

font_disabled_color

Color(0.875, 0.875, 0.875, 0.5)

Color

font_hovered_color

Color(0.95, 0.95, 0.95, 1)

Color

font_outline_color

Color(0, 0, 0, 1)

Color

font_selected_color

Color(0.95, 0.95, 0.95, 1)

Color

font_unselected_color

Color(0.7, 0.7, 0.7, 1)

Color

icon_disabled_color

Color(1, 1, 1, 1)

Color

icon_hovered_color

Color(1, 1, 1, 1)

Color

icon_selected_color

Color(1, 1, 1, 1)

Color

icon_unselected_color

Color(1, 1, 1, 1)

int

h_separation

4

int

hover_switch_wait_msec

500

int

icon_max_width

0

int

outline_size

0

int

tab_separation

0

Font

font

int

font_size

Texture2D

close

Texture2D

decrement

Texture2D

decrement_highlight

Texture2D

drop_mark

Texture2D

increment

Texture2D

increment_highlight

StyleBox

button_highlight

StyleBox

button_pressed

StyleBox

tab_disabled

StyleBox

tab_focus

StyleBox

tab_hovered

StyleBox

tab_selected

StyleBox

tab_unselected


Сигнали

active_tab_rearranged(idx_to: int) 🔗

Викликається, коли активну вкладку перевпорядковують перетягуванням миші. Див. drag_to_rearrange_enabled.


tab_button_pressed(tab: int) 🔗

Видається, коли натискається права кнопка вкладки. Див. set_tab_button_icon().


tab_changed(tab: int) 🔗

Випробувано при переході на іншу вкладку.


tab_clicked(tab: int) 🔗

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


tab_close_pressed(tab: int) 🔗

Викликається при натисканні кнопки закриття вкладки або, якщо close_with_middle_mouse має значення true, при клацанні середньою кнопкою миші на вкладці.

Примітка: Вкладки не видаляються автоматично; цю поведінку потрібно налаштувати вручну. Наприклад:

$TabBar.tab_close_pressed.connect($TabBar.remove_tab)

tab_hovered(tab: int) 🔗

Увімкніть, коли вкладка передається мишкою.


tab_rmb_clicked(tab: int) 🔗

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


tab_selected(tab: int) 🔗

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


Переліки

enum AlignmentMode: 🔗

AlignmentMode ALIGNMENT_LEFT = 0

Вирівнює вкладки ліворуч.

AlignmentMode ALIGNMENT_CENTER = 1

Вирівнює вкладки посередині.

AlignmentMode ALIGNMENT_RIGHT = 2

Вирівнює вкладки праворуч.

AlignmentMode ALIGNMENT_MAX = 3

Представляє розмір переліку AlignmentMode.


enum CloseButtonDisplayPolicy: 🔗

CloseButtonDisplayPolicy CLOSE_BUTTON_SHOW_NEVER = 0

Ніколи не покажуть кнопки закриття.

CloseButtonDisplayPolicy CLOSE_BUTTON_SHOW_ACTIVE_ONLY = 1

Тільки покажуть на вказану активну вкладку.

CloseButtonDisplayPolicy CLOSE_BUTTON_SHOW_ALWAYS = 2

Показати близьку кнопку на всіх вкладках.

CloseButtonDisplayPolicy CLOSE_BUTTON_MAX = 3

Представляє розмір CloseButtonDisplayPolicy enum.


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

bool clip_tabs = true 🔗

  • void set_clip_tabs(value: bool)

  • bool get_clip_tabs()

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


bool close_with_middle_mouse = true 🔗

  • void set_close_with_middle_mouse(value: bool)

  • bool get_close_with_middle_mouse()

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


int current_tab = -1 🔗

  • void set_current_tab(value: int)

  • int get_current_tab()

Індекс поточного вибраного вкладки. Вартість -1 означає, що не вибрано вкладку і може бути встановлена лише тоді, коли deselect_enabled true або якщо всі вкладки приховані або вимкнені.


bool deselect_enabled = false 🔗

  • void set_deselect_enabled(value: bool)

  • bool get_deselect_enabled()

Якщо true, всі вкладки можна видалити так, щоб не вибрано вкладку. Натисніть на поточну вкладку, щоб видалити її.


bool drag_to_rearrange_enabled = false 🔗

  • void set_drag_to_rearrange_enabled(value: bool)

  • bool get_drag_to_rearrange_enabled()

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


int max_tab_width = 0 🔗

  • void set_max_tab_width(value: int)

  • int get_max_tab_width()

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


bool scroll_to_selected = true 🔗

  • void set_scroll_to_selected(value: bool)

  • bool get_scroll_to_selected()

Якщо true, вкладка буде змінена для збереження в даний час вибраної вкладки.


bool scrolling_enabled = true 🔗

  • void set_scrolling_enabled(value: bool)

  • bool get_scrolling_enabled()

якщо true, колесо мишки можна використовувати для навігації вигляду прокрутки.


bool select_with_rmb = false 🔗

  • void set_select_with_rmb(value: bool)

  • bool get_select_with_rmb()

Якщо true, вибравши вкладку з правою кнопкою миші.


bool switch_on_drag_hover = true 🔗

  • void set_switch_on_drag_hover(value: bool)

  • bool get_switch_on_drag_hover()

Якщо true, наведення курсора на вкладку під час перетягування чогось призведе до перемикання на цю вкладку. Це не впливає на наведення курсора на іншу вкладку для зміни порядку. Затримка перемикання визначається параметром hover_switch_wait_msec.


AlignmentMode tab_alignment = 0 🔗

Горизонтальне вирівнювання вкладок.


CloseButtonDisplayPolicy tab_close_display_policy = 0 🔗

Коли кнопка закриття з’явиться на вкладках.


int tab_count = 0 🔗

  • void set_tab_count(value: int)

  • int get_tab_count()

Кількість вкладок в даний час в барі.


bool tab_{index}/disabled = false 🔗

Якщо true, вкладка з індексом index вимкнена.

Примітка: index — це значення в діапазоні 0 .. tab_count - 1.


Texture2D tab_{index}/icon 🔗

Якщо true, вкладка з індексом index прихована.

Примітка: index — це значення в діапазоні 0 .. tab_count - 1.


String tab_{index}/title = "" 🔗

Текст заголовка вкладки в index.

Примітка: index — це значення в діапазоні 0 .. tab_count - 1.


String tab_{index}/tooltip = "" 🔗

Текст підказки для вкладки з індексом index.

Примітка: index — це значення в діапазоні 0 .. tab_count - 1.


int tabs_rearrange_group = -1 🔗

  • void set_tabs_rearrange_group(value: int)

  • int get_tabs_rearrange_group()

TabBar з однаковим ідентифікатором групи задніх груп дозволить перетягування вкладок між ними. Увімкнути перетягування drag_to_rearrange_enabled.

Налаштування цього до -1 буде відключати заднє кріплення між TabBar.


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

void add_tab(title: String = "", icon: Texture2D = null) 🔗

Додати нову вкладку.


void clear_tabs() 🔗

Очищає всі вкладки.


void ensure_tab_visible(idx: int) 🔗

Переміщує перегляд прокрутки, щоб зробити вкладку видимим.


bool get_offset_buttons_visible() const 🔗

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


int get_previous_tab() const 🔗

Повернути індекс раніше активної вкладки.


Texture2D get_tab_button_icon(tab_idx: int) const 🔗

Повернення іконки для правої кнопки вкладки в індекс tab_idx або null, якщо права кнопка не має іконки.


Texture2D get_tab_icon(tab_idx: int) const 🔗

Повернення іконки для вкладки в індекс tab_idx або null, якщо вкладка не має іконки.


int get_tab_icon_max_width(tab_idx: int) const 🔗

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


int get_tab_idx_at_point(point: Vector2) const 🔗

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


String get_tab_language(tab_idx: int) const 🔗

Повернути мову заголовка вкладки.


Variant get_tab_metadata(tab_idx: int) const 🔗

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


int get_tab_offset() const 🔗

Повертає кількість прихованих вкладок, зміщених зліва.


Rect2 get_tab_rect(tab_idx: int) const 🔗

Вкладка повертається Rect2 з локальною позицією та розміром.


TextDirection get_tab_text_direction(tab_idx: int) const 🔗

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


String get_tab_title(tab_idx: int) const 🔗

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


String get_tab_tooltip(tab_idx: int) const 🔗

Повертає текст вкладки в індекс tab_idx.


bool is_tab_disabled(tab_idx: int) const 🔗

Повертає true, якщо вкладка в індексі tab_idx вимкнена.


bool is_tab_hidden(tab_idx: int) const 🔗

Повертає true, якщо вкладка в індексі tab_idx прихована.


void move_tab(from: int, to: int) 🔗

Переміщує вкладку з from до to.


void remove_tab(tab_idx: int) 🔗

Видалити вкладку в індекс tab_idx.


bool select_next_available() 🔗

Виберіть перший доступний вкладку з більшим індексом, ніж обраний в даний час. Повернення true якщо змінено вибір вкладок.


bool select_previous_available() 🔗

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


void set_tab_button_icon(tab_idx: int, icon: Texture2D) 🔗

Встановлює icon для кнопки вкладки за індексом tab_idx (розташованої праворуч, перед кнопкою закриття), роблячи її видимою та клікабельною (див. tab_button_pressed). Якщо надати їй значення null, кнопка буде прихована.


void set_tab_disabled(tab_idx: int, disabled: bool) 🔗

Якщо disabled має значення true, вкладка за індексом tab_idx вимикається, що робить її невзаємодіючою.


void set_tab_hidden(tab_idx: int, hidden: bool) 🔗

Якщо hidden має значення true, приховує вкладку за індексом tab_idx, що зникає з області вкладок.


void set_tab_icon(tab_idx: int, icon: Texture2D) 🔗

Встановлює icon для вкладки з індексом tab_idx.


void set_tab_icon_max_width(tab_idx: int, width: int) 🔗

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


void set_tab_language(tab_idx: int, language: String) 🔗

Встановлює код мови заголовка вкладки за індексом tab_idx на language. Це використовується для алгоритмів розриву рядків та формування тексту. Якщо language порожній, використовується поточна локалізація.


void set_tab_metadata(tab_idx: int, metadata: Variant) 🔗

Встановіть значення метаданих для вкладки в індекс tab_idx, який можна отримати пізніше за допомогою get_tab_metadata().


void set_tab_text_direction(tab_idx: int, direction: TextDirection) 🔗

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


void set_tab_title(tab_idx: int, title: String) 🔗

Встановіть title для вкладки в індекс tab_idx.


void set_tab_tooltip(tab_idx: int, tooltip: String) 🔗

Встановіть tooltip для вкладки в індекс tab_idx.

Примітка: За замовчуванням, якщо tooltip є порожнім, а текст вкладки обрізається (не всі символи вводяться в вкладку), назву буде відображатися як інструмент. Щоб приховати пристрій, призначте ", як текст tooltip.


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

Color drop_mark_color = Color(1, 1, 1, 1) 🔗

Модуляційний колір для іконки drop_mark.


Color font_disabled_color = Color(0.875, 0.875, 0.875, 0.5) 🔗

Колір шрифту відключених вкладок.


Color font_hovered_color = Color(0.95, 0.95, 0.95, 1) 🔗

Колір шрифту в даний час ховається вкладка. Не застосовується до вибраної вкладки.


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

Вміст текстового контуру імені вкладки.


Color font_selected_color = Color(0.95, 0.95, 0.95, 1) 🔗

Колір шрифту вказаної вкладки.


Color font_unselected_color = Color(0.7, 0.7, 0.7, 1) 🔗

Колір шрифту іншого, невибрані вкладки.


Color icon_disabled_color = Color(1, 1, 1, 1) 🔗

Колір значка вимкнених вкладок.


Color icon_hovered_color = Color(1, 1, 1, 1) 🔗

Колір значка вкладки, на яку наведено курсор. Не застосовується до вибраної вкладки.


Color icon_selected_color = Color(1, 1, 1, 1) 🔗

Колір значка поточної вибраної вкладки.


Color icon_unselected_color = Color(1, 1, 1, 1) 🔗

Колір значків інших, невибраних вкладок.


int h_separation = 4 🔗

Горизонтальне розділення елементів всередині вкладок.


int hover_switch_wait_msec = 500 🔗

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


int icon_max_width = 0 🔗

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


int outline_size = 0 🔗

Розмір тексту вкладки.

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


int tab_separation = 0 🔗

Простір між вкладками на панелі вкладок.


Font font 🔗

Шрифт, який використовується для позначення назв вкладок.


int font_size 🔗

Розмір шрифту назв вкладок.


Texture2D close 🔗

Піктограма кнопки закриття (див. tab_close_display_policy).


Texture2D decrement 🔗

Ікона для лівої стрілки, яка з'являється, коли є занадто багато вкладок, щоб відповідати в ширину контейнера. Коли кнопка вимкнена (тобто видно першу вкладку), вона з'являється напівпрозорою.


Texture2D decrement_highlight 🔗

Ікона для лівої стрілки, яка з'являється, коли є занадто багато вкладок, щоб відповідати в ширину контейнера. Використовуються при натисканні кнопки з курсором.


Texture2D drop_mark 🔗

Піктограма, що вказує місце, куди буде переміщено перетягнуту вкладку (див. drag_to_rearrange_enabled).


Texture2D increment 🔗

Ікона для правої стрілки, яка з'являється, коли є занадто багато вкладок, щоб відповідати в ширину контейнера. Коли кнопка вимкнена (тобто остання вкладка видима) вона з'являється напівпрозорою.


Texture2D increment_highlight 🔗

Ікона для правої стрілки, яка з'являється, коли є занадто багато вкладок, щоб відповідати в ширину контейнера. Використовуються при натисканні кнопки з курсором.


StyleBox button_highlight 🔗

Задня частина вкладки і закриття гудзиків, коли вони переховуються курсором.


StyleBox button_pressed 🔗

Задня частина вкладки і закриття гудзиків при натисканні.


StyleBox tab_disabled 🔗

Стиль відключених вкладок.


StyleBox tab_focus 🔗

StyleBox використовується при фокусі TabBar. tab_focus StyleBox відображається over бази StyleBox вибраної вкладки, тому частково прозора StyleBox повинна бути використана для забезпечення бази StyleBox. StyleBox, який добре працює для цього. Щоб вимкнути візуальний ефект фокусу, призначте ресурс StyleBoxEmpty. Зверніть увагу, що відключення візуального ефекту фокусу буде завдати шкоди клавіатурі / керованій навігації, тому це не рекомендується для причин доступності.


StyleBox tab_hovered 🔗

Стиль в даний час ховається вкладка. Не застосовується до вибраної вкладки.

Примітка: Цей стиль буде складений з такою ж шириною, як tab_unselected при мінімальному.


StyleBox tab_selected 🔗

Стиль вказаної вкладки.


StyleBox tab_unselected 🔗

Стиль іншого, невибрані вкладки.