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.
Checking the stable version of the documentation...
TabBar
Наследует: Control < CanvasItem < Node < Object
Элемент управления, представляющий собой горизонтальную панель с вкладками.
Описание
Элемент управления, который предоставляет горизонтальную панель с вкладками. Похож на TabContainer, но отвечает только за отрисовку вкладок, не взаимодействуя с дочерними элементами.
Свойства
|
||
|
||
|
||
|
||
|
||
focus_mode |
|
|
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
Методы
Свойства темы
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
Сигналы
active_tab_rearranged(idx_to: int) 🔗
Выдается, когда активная вкладка перестраивается с помощью перетаскивания мышью. См. drag_to_rearrange_enabled.
tab_button_pressed(tab: int) 🔗
Вызывается при нажатии правой кнопки вкладки. См. set_tab_button_icon().
Возникает при переключении на другую вкладку.
Выдается при нажатии на вкладку, даже если это текущая вкладка.
Генерируется при нажатии кнопки закрытия вкладки или, если параметр close_with_middle_mouse имеет значение true, при щелчке средней кнопкой мыши по вкладке.
Примечание: Вкладки не закрываются автоматически; это поведение необходимо запрограммировать вручную. Например:
$TabBar.tab_close_pressed.connect($TabBar.remove_tab)
GetNode<TabBar>("TabBar").TabClosePressed += GetNode<TabBar>("TabBar").RemoveTab;
Выдается при наведении указателя мыши на вкладку.
Вызывается при щелчке правой кнопкой мыши по вкладке.
Испускается при выборе вкладки с помощью щелчка, направленного ввода или скрипта, даже если это текущая вкладка.
Перечисления
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.
Описания свойств
Если true, вкладки, выходящие за пределы ширины этого узла, будут скрыты, отображая вместо этого две кнопки навигации. В противном случае минимальный размер этого узла обновляется так, чтобы все вкладки были видны.
bool close_with_middle_mouse = true 🔗
Если true, то щелчок средней кнопкой мыши по вкладке вызовет сигнал tab_close_pressed.
Индекс текущей выбранной вкладки. Значение -1 означает, что вкладка не выбрана, и может быть установлено только тогда, когда deselect_enabled равно true или если все вкладки скрыты или отключены.
bool deselect_enabled = false 🔗
Если true, все вкладки могут быть отменены, так что ни одна вкладка не будет выбрана. Щелкните по текущей вкладке, чтобы отменить ее выбор.
bool drag_to_rearrange_enabled = false 🔗
Если true, вкладки можно переставлять перетаскиванием мыши.
Устанавливает максимальную ширину, которой должны быть ограничены все вкладки. Неограниченно, если установлено значение 0.
bool scroll_to_selected = true 🔗
Если true, смещение вкладки будет изменено, чтобы сохранить видимой текущую выбранную вкладку.
bool scrolling_enabled = true 🔗
если true, колесо прокрутки мыши можно использовать для навигации по прокручиваемому виду.
bool select_with_rmb = false 🔗
Если true, позволяет выбрать вкладку правой кнопкой мыши.
bool switch_on_drag_hover = true 🔗
Если true, то при наведении курсора на вкладку во время перетаскивания элемента произойдет переключение на эту вкладку. При наведении курсора на другую вкладку для изменения ее порядка это не сработает. Задержка при этом определяется параметром hover_switch_wait_msec.
AlignmentMode tab_alignment = 0 🔗
void set_tab_alignment(value: AlignmentMode)
AlignmentMode get_tab_alignment()
Горизонтальное выравнивание вкладок.
CloseButtonDisplayPolicy tab_close_display_policy = 0 🔗
void set_tab_close_display_policy(value: CloseButtonDisplayPolicy)
CloseButtonDisplayPolicy get_tab_close_display_policy()
Когда на вкладках появится кнопка закрытия.
Количество вкладок, находящихся в данный момент на панели.
bool tab_{index}/disabled = false 🔗
If true, the tab at index is disabled.
Note: index is a value in the 0 .. tab_count - 1 range.
If true, the tab at index is hidden.
Note: index is a value in the 0 .. tab_count - 1 range.
String tab_{index}/title = "" 🔗
The title text of the tab at index.
Note: index is a value in the 0 .. tab_count - 1 range.
String tab_{index}/tooltip = "" 🔗
The tooltip text of the tab at index.
Note: index is a value in the 0 .. tab_count - 1 range.
int tabs_rearrange_group = -1 🔗
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 🔗
Возвращает индекс вкладки в локальных координатах point. Возвращает -1, если точка находится за пределами границ элемента управления или если в запрошенной позиции нет вкладки.
String get_tab_language(tab_idx: int) const 🔗
Возвращает код языка заголовка вкладки.
Variant get_tab_metadata(tab_idx: int) const 🔗
Возвращает значение метаданных, заданное для вкладки с индексом tab_idx, используя set_tab_metadata(). Если ранее метаданные не были заданы, по умолчанию возвращается null.
Возвращает количество скрытых вкладок, смещенных влево.
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 отключена.
Возвращает 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, делая ее неинтерактивной.
Если 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 hover_switch_wait_msec = 500 🔗
При перетаскивании элементов это количество миллисекунд, которое нужно подождать перед переключением вкладки.
Максимально допустимая ширина значка вкладки. Это ограничение применяется поверх размера значка по умолчанию, но до значения, установленного с помощью set_tab_icon_max_width(). Высота регулируется в соответствии с соотношением значка.
Размер контура текста вкладки.
Примечание: При использовании шрифта с включенным FontFile.multichannel_signed_distance_field его FontFile.msdf_pixel_range должен быть установлен как минимум в дважды больше значения outline_size, чтобы контур выглядел правильно. В противном случае контур может оказаться обрезанным раньше, чем предполагалось.
Пространство между вкладками на панели вкладок.
Шрифт, используемый для отображения названий вкладок.
Размер шрифта названий вкладок.
Значок для кнопки закрытия (см. tab_close_display_policy).
Значок для кнопки со стрелкой влево, которая появляется, когда вкладок слишком много, чтобы поместиться в ширину контейнера. Когда кнопка отключена (т.е. видна первая вкладка), она выглядит полупрозрачной.
Texture2D decrement_highlight 🔗
Значок для кнопки со стрелкой влево, которая появляется, когда вкладок слишком много, чтобы поместиться в ширину контейнера. Используется, когда на кнопку наведен курсор.
Icon shown to indicate where a dragged tab will be dropped (see drag_to_rearrange_enabled).
Значок для кнопки со стрелкой вправо, которая появляется, когда вкладок слишком много, чтобы вписаться в ширину контейнера. Когда кнопка отключена (т.е. видна последняя вкладка), она становится полупрозрачной.
Texture2D increment_highlight 🔗
Значок для кнопки со стрелкой вправо, которая появляется, когда вкладок слишком много, чтобы поместиться в ширину контейнера. Используется, когда на кнопку наведен курсор.
Фон вкладки и кнопок закрытия при наведении на них курсора.
Фон вкладки и кнопки закрытия при нажатии.
Стиль отключенных вкладок.
StyleBox используется, когда TabBar находится в фокусе. tab_focus StyleBox отображается над базовой StyleBox выбранной вкладки, поэтому следует использовать частично прозрачный StyleBox, чтобы базовый StyleBox оставался видимым. StyleBox представляющий контур или подчеркивание, хорошо подходит для этой цели. Чтобы отключить визуальный эффект фокуса, назначьте ресурс StyleBoxEmpty. Обратите внимание, что отключение визуального эффекта фокуса навредит удобству использования навигации с помощью клавиатуры/контроллера, поэтому это не рекомендуется по соображениям доступности.
Стиль текущей наведенной вкладки. Не применяется к выбранной вкладке.
Примечание: Этот стиль будет отрисован с той же шириной, что и tab_unselected как минимум.
Стиль текущей выбранной вкладки.
Стиль остальных, невыбранных вкладок.