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().
Возникает при переключении на другую вкладку.
Выдается при нажатии на вкладку, даже если это текущая вкладка.
Emitted when a tab's close button is pressed or, if close_with_middle_mouse is true, when middle-clicking on a tab.
Note: Tabs are not removed automatically; this behavior needs to be coded manually. For example:
$TabBar.tab_close_pressed.connect($TabBar.remove_tab)
GetNode<TabBar>("TabBar").TabClosePressed += GetNode<TabBar>("TabBar").RemoveTab;
Выдается при наведении указателя мыши на вкладку.
Emitted when a tab is right-clicked.
Испускается при выборе вкладки с помощью щелчка, направленного ввода или скрипта, даже если это текущая вкладка.
Перечисления
enum AlignmentMode: 🔗
AlignmentMode ALIGNMENT_LEFT = 0
Aligns tabs to the left.
AlignmentMode ALIGNMENT_CENTER = 1
Aligns tabs in the middle.
AlignmentMode ALIGNMENT_RIGHT = 2
Aligns tabs to the right.
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 🔗
If true, middle-clicking on a tab will emit the tab_close_pressed signal.
Индекс текущей выбранной вкладки. Значение -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 🔗
If true, hovering over a tab while dragging something will switch to that tab. Does not have effect when hovering another tab to rearrange. The delay for when this happens is dictated by hover_switch_wait_msec.
AlignmentMode tab_alignment = 0 🔗
void set_tab_alignment(value: AlignmentMode)
AlignmentMode get_tab_alignment()
The horizontal alignment of the tabs.
CloseButtonDisplayPolicy tab_close_display_policy = 0 🔗
void set_tab_close_display_policy(value: CloseButtonDisplayPolicy)
CloseButtonDisplayPolicy get_tab_close_display_policy()
Когда на вкладках появится кнопка закрытия.
Количество вкладок, находящихся в данный момент на панели.
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) 🔗
Sets the language code of the title for the tab at index tab_idx to language. This is used for line-breaking and text shaping algorithms. If language is empty, the current locale is used.
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) 🔗
Icon color of disabled tabs.
Color icon_hovered_color = Color(1, 1, 1, 1) 🔗
Icon color of the currently hovered tab. Does not apply to the selected tab.
Color icon_selected_color = Color(1, 1, 1, 1) 🔗
Icon color of the currently selected tab.
Color icon_unselected_color = Color(1, 1, 1, 1) 🔗
Icon color of the other, unselected tabs.
Горизонтальное разделение между элементами внутри вкладок.
int hover_switch_wait_msec = 500 🔗
During a drag-and-drop, this is how many milliseconds to wait before switching the tab.
Максимально допустимая ширина значка вкладки. Это ограничение применяется поверх размера значка по умолчанию, но до значения, установленного с помощью set_tab_icon_max_width(). Высота регулируется в соответствии с соотношением значка.
Размер контура текста вкладки.
Примечание: При использовании шрифта с включенным FontFile.multichannel_signed_distance_field его FontFile.msdf_pixel_range должен быть установлен как минимум в дважды больше значения outline_size, чтобы контур выглядел правильно. В противном случае контур может оказаться обрезанным раньше, чем предполагалось.
Пространство между вкладками на панели вкладок.
Шрифт, используемый для отображения названий вкладок.
Размер шрифта названий вкладок.
Значок для кнопки закрытия (см. tab_close_display_policy).
Значок для кнопки со стрелкой влево, которая появляется, когда вкладок слишком много, чтобы поместиться в ширину контейнера. Когда кнопка отключена (т.е. видна первая вкладка), она выглядит полупрозрачной.
Texture2D decrement_highlight 🔗
Значок для кнопки со стрелкой влево, которая появляется, когда вкладок слишком много, чтобы поместиться в ширину контейнера. Используется, когда на кнопку наведен курсор.
Значок, показывающий, куда будет перемещена перетаскиваемая вкладка (см. drag_to_rearrange_enabled).
Значок для кнопки со стрелкой вправо, которая появляется, когда вкладок слишком много, чтобы вписаться в ширину контейнера. Когда кнопка отключена (т.е. видна последняя вкладка), она становится полупрозрачной.
Texture2D increment_highlight 🔗
Значок для кнопки со стрелкой вправо, которая появляется, когда вкладок слишком много, чтобы поместиться в ширину контейнера. Используется, когда на кнопку наведен курсор.
Фон вкладки и кнопок закрытия при наведении на них курсора.
Фон вкладки и кнопки закрытия при нажатии.
Стиль отключенных вкладок.
StyleBox используется, когда TabBar находится в фокусе. tab_focus StyleBox отображается над базовой StyleBox выбранной вкладки, поэтому следует использовать частично прозрачный StyleBox, чтобы базовый StyleBox оставался видимым. StyleBox представляющий контур или подчеркивание, хорошо подходит для этой цели. Чтобы отключить визуальный эффект фокуса, назначьте ресурс StyleBoxEmpty. Обратите внимание, что отключение визуального эффекта фокуса навредит удобству использования навигации с помощью клавиатуры/контроллера, поэтому это не рекомендуется по соображениям доступности.
Стиль текущей наведенной вкладки. Не применяется к выбранной вкладке.
Примечание: Этот стиль будет отрисован с той же шириной, что и tab_unselected как минимум.
Стиль текущей выбранной вкладки.
Стиль остальных, невыбранных вкладок.