Up to date

This page is up to date for Godot 4.2. If you still find outdated information, please open an issue.

TabBar

Inherits: Control < CanvasItem < Node < Object

A control that provides a horizontal bar with tabs.

Description

A control that provides a horizontal bar with tabs. Similar to TabContainer but is only in charge of drawing tabs, not interacting with children.

Properties

bool

clip_tabs

true

int

current_tab

0

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

AlignmentMode

tab_alignment

0

CloseButtonDisplayPolicy

tab_close_display_policy

0

int

tab_count

0

int

tabs_rearrange_group

-1

Methods

void

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

void

clear_tabs ( )

void

ensure_tab_visible ( int idx )

bool

get_offset_buttons_visible ( ) const

int

get_previous_tab ( ) const

Texture2D

get_tab_button_icon ( int tab_idx ) const

Texture2D

get_tab_icon ( int tab_idx ) const

int

get_tab_icon_max_width ( int tab_idx ) const

int

get_tab_idx_at_point ( Vector2 point ) const

String

get_tab_language ( int tab_idx ) const

Variant

get_tab_metadata ( int tab_idx ) const

int

get_tab_offset ( ) const

Rect2

get_tab_rect ( int tab_idx ) const

TextDirection

get_tab_text_direction ( int tab_idx ) const

String

get_tab_title ( int tab_idx ) const

bool

is_tab_disabled ( int tab_idx ) const

bool

is_tab_hidden ( int tab_idx ) const

void

move_tab ( int from, int to )

void

remove_tab ( int tab_idx )

bool

select_next_available ( )

bool

select_previous_available ( )

void

set_tab_button_icon ( int tab_idx, Texture2D icon )

void

set_tab_disabled ( int tab_idx, bool disabled )

void

set_tab_hidden ( int tab_idx, bool hidden )

void

set_tab_icon ( int tab_idx, Texture2D icon )

void

set_tab_icon_max_width ( int tab_idx, int width )

void

set_tab_language ( int tab_idx, String language )

void

set_tab_metadata ( int tab_idx, Variant metadata )

void

set_tab_text_direction ( int tab_idx, TextDirection direction )

void

set_tab_title ( int tab_idx, String title )

Theme Properties

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(1, 1, 1, 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)

int

h_separation

4

int

icon_max_width

0

int

outline_size

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


Signals

active_tab_rearranged ( int idx_to )

Emitted when the active tab is rearranged via mouse drag. See drag_to_rearrange_enabled.


tab_button_pressed ( int tab )

Emitted when a tab's right button is pressed. See set_tab_button_icon.


tab_changed ( int tab )

Emitted when switching to another tab.


tab_clicked ( int tab )

Emitted when a tab is clicked, even if it is the current tab.


tab_close_pressed ( int tab )

Emitted when a tab's close button is pressed.

Note: Tabs are not removed automatically once the close button is pressed, this behavior needs to be programmed manually. For example: