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.

Window

Hérite de : Viewport < Node < Object

Hérité par : AcceptDialog, Popup

Classe de base pour toutes les fenêtres, boîtes de dialogue et popups.

Description

Un nœud qui crée une fenêtre. La fenêtre peut être soit une fenêtre du système natif soit intégrée dans une autre Window (voir Viewport.gui_embed_subwindows).

Durant l'exécution, les Windows ne fermeront pas automatiquement lorsque demandé. Vous devez le manipuler manuellement en utilisant le signal close_requested (ceci s'applique à la fois à l'appui sur le bouton de fermeture et au clic en dehors d'une popup).

Tutoriels

Propriétés

String

accessibility_description

""

String

accessibility_name

""

bool

always_on_top

false

bool

auto_translate

bool

borderless

false

ContentScaleAspect

content_scale_aspect

0

float

content_scale_factor

1.0

ContentScaleMode

content_scale_mode

0

Vector2i

content_scale_size

Vector2i(0, 0)

ContentScaleStretch

content_scale_stretch

0

int

current_screen

bool

exclude_from_capture

false

bool

exclusive

false

bool

extend_to_title

false

bool

force_native

false

bool

hdr_output_requested

false

WindowInitialPosition

initial_position

0

bool

keep_title_visible

false

Vector2i

max_size

Vector2i(0, 0)

bool

maximize_disabled

false

Vector2i

min_size

Vector2i(0, 0)

bool

minimize_disabled

false

Mode

mode

0

bool

mouse_passthrough

false

PackedVector2Array

mouse_passthrough_polygon

PackedVector2Array()

Rect2i

nonclient_area

Rect2i(0, 0, 0, 0)

bool

popup_window

false

bool

popup_wm_hint

false

Vector2i

position

Vector2i(0, 0)

bool

sharp_corners

false

Vector2i

size

Vector2i(100, 100)

Theme

theme

StringName

theme_type_variation

&""

String

title

""

bool

transient

false

bool

transient_to_focused

false

bool

transparent

false

bool

unfocusable

false

bool

unresizable

false

bool

visible

true

bool

wrap_controls

false

Méthodes

Vector2

_get_contents_minimum_size() virtual const

void

add_theme_color_override(name: StringName, color: Color)

void

add_theme_constant_override(name: StringName, constant: int)

void

add_theme_font_override(name: StringName, font: Font)

void

add_theme_font_size_override(name: StringName, font_size: int)

void

add_theme_icon_override(name: StringName, texture: Texture2D)

void

add_theme_stylebox_override(name: StringName, stylebox: StyleBox)

void

begin_bulk_theme_override()

bool

can_draw() const

void

child_controls_changed()

void

end_bulk_theme_override()

Vector2

get_contents_minimum_size() const

bool

get_flag(flag: Flags) const

Window

get_focused_window() static

LayoutDirection

get_layout_direction() const

float

get_output_max_linear_value() const

Vector2i

get_position_with_decorations() const

Vector2i

get_size_with_decorations() const

Color

get_theme_color(name: StringName, theme_type: StringName = &"") const

int

get_theme_constant(name: StringName, theme_type: StringName = &"") const

float

get_theme_default_base_scale() const

Font

get_theme_default_font() const

int

get_theme_default_font_size() const

Font

get_theme_font(name: StringName, theme_type: StringName = &"") const

int

get_theme_font_size(name: StringName, theme_type: StringName = &"") const

Texture2D

get_theme_icon(name: StringName, theme_type: StringName = &"") const

StyleBox

get_theme_stylebox(name: StringName, theme_type: StringName = &"") const

int

get_window_id() const

void

grab_focus()

bool

has_focus() const

bool

has_theme_color(name: StringName, theme_type: StringName = &"") const

bool

has_theme_color_override(name: StringName) const

bool

has_theme_constant(name: StringName, theme_type: StringName = &"") const

bool

has_theme_constant_override(name: StringName) const

bool

has_theme_font(name: StringName, theme_type: StringName = &"") const

bool

has_theme_font_override(name: StringName) const

bool

has_theme_font_size(name: StringName, theme_type: StringName = &"") const

bool

has_theme_font_size_override(name: StringName) const

bool

has_theme_icon(name: StringName, theme_type: StringName = &"") const

bool

has_theme_icon_override(name: StringName) const

bool

has_theme_stylebox(name: StringName, theme_type: StringName = &"") const

bool

has_theme_stylebox_override(name: StringName) const

void

hide()

bool

is_embedded() const

bool

is_layout_rtl() const

bool

is_maximize_allowed() const

bool

is_using_font_oversampling() const

void

move_to_center()

void

move_to_foreground()

void

popup(rect: Rect2i = Rect2i(0, 0, 0, 0))

void

popup_centered(minsize: Vector2i = Vector2i(0, 0))

void

popup_centered_clamped(minsize: Vector2i = Vector2i(0, 0), fallback_ratio: float = 0.75)

void

popup_centered_ratio(ratio: float = 0.8)

void

popup_exclusive(from_node: Node, rect: Rect2i = Rect2i(0, 0, 0, 0))

void

popup_exclusive_centered(from_node: Node, minsize: Vector2i = Vector2i(0, 0))

void

popup_exclusive_centered_clamped(from_node: Node, minsize: Vector2i = Vector2i(0, 0), fallback_ratio: float = 0.75)

void

popup_exclusive_centered_ratio(from_node: Node, ratio: float = 0.8)

void

popup_exclusive_on_parent(from_node: Node, parent_rect: Rect2i)

void

popup_on_parent(parent_rect: Rect2i)

void

remove_theme_color_override(name: StringName)

void

remove_theme_constant_override(name: StringName)

void

remove_theme_font_override(name: StringName)

void

remove_theme_font_size_override(name: StringName)

void

remove_theme_icon_override(name: StringName)

void

remove_theme_stylebox_override(name: StringName)

void

request_attention()

void

reset_size()

void

set_flag(flag: Flags, enabled: bool)

void

set_ime_active(active: bool)

void

set_ime_position(position: Vector2i)

void

set_layout_direction(direction: LayoutDirection)

void

set_taskbar_progress_state(state: ProgressState)

void

set_taskbar_progress_value(value: float)

void

set_unparent_when_invisible(unparent: bool)

void

set_use_font_oversampling(enable: bool)

void

show()

void

start_drag()

void

start_resize(edge: WindowResizeEdge)

Propriétés du thème

Color

title_color

Color(0.875, 0.875, 0.875, 1)

Color

title_outline_modulate

Color(0, 0, 0, 1)

int

close_h_offset

18

int

close_v_offset

24

int

resize_margin

4

int

title_height

36

int

title_outline_size

0

Font

title_font

int

title_font_size

Texture2D

close

Texture2D

close_pressed

StyleBox

embedded_border

StyleBox

embedded_unfocused_border


Signaux

about_to_popup() 🔗

Émis juste après l'appel à popup(), avant que la Window n'apparaisse ou ne fasse quelque chose.


close_requested() 🔗

Émis lorsque le bouton de fermeture de la Window est appuyé ou lorsque popup_window est activé et que l'utilisateur clique à l'extérieur de la fenêtre.

Ce signal peut être utilisé pour traiter la fermeture de la fenêtre, par exemple en le connectant à hide().


dpi_changed() 🔗

Émis lorsque le DPI de la Window change en raison de changements de niveau de l'OS (p. ex. déplacer la fenêtre d'un écran Retina à un écran de résolution inférieure).

Note : Seulement implémenté sur MacOS et Linux (Wayland).


files_dropped(files: PackedStringArray) 🔗

Émis lorsque des fichiers sont glissés du gestionnaire de fichiers de l'OS et déposés dans la fenêtre de jeu. L'argument est une liste de chemins de fichiers.

func _ready():
    get_window().files_dropped.connect(on_files_dropped)

func on_files_dropped(files):
    print(files)

Note : Ce signal ne fonctionne qu'avec des fenêtres natives, c'est-à-dire la fenêtre principale et les nœuds dérivés de Window lorsque Viewport.gui_embed_subwindows est désactivé dans le viewport principal.


focus_entered() 🔗

Émis lorsque la Window prend le focus.


focus_exited() 🔗

Émis lorsque la Window perd le focus.


go_back_requested() 🔗

Émis lorsqu'une demande d'aller en arrière est envoyée (p. ex. appuyant sur le bouton "Retour" sur Android), juste après Node.NOTIFICATION_WM_GO_BACK_REQUEST.


mouse_entered() 🔗

Émis lorsque le curseur de la souris pénètre dans la zone visible de la Window, qui n'est pas cachée derrière d'autres Controls ou fenêtres, à condition que son Viewport.gui_disable_input vaille false, peu importe si elle a le focus ou non.


mouse_exited() 🔗

Émis lorsque le curseur de la souris quitte la zone visible de la Window, qui n'est pas cachée derrière d'autres Controls ou fenêtres, à condition que son Viewport.gui_disable_input vaille false, peu importe si elle a le focus ou non.


nonclient_window_input(event: InputEvent) 🔗

Emitted when the mouse event is received by the custom decoration area defined by nonclient_area, and normal input to the window is blocked (such as when it has an exclusive child opened). event's position is in the embedder's coordinate system.


output_max_linear_value_changed(output_max_linear_value: float) 🔗

Emitted when the output max linear value returned by get_output_max_linear_value() has changed. This occurs when HDR output is enabled or disabled and when any HDR output luminance values of the window have changed, such as when the player adjusts their screen brightness setting or moves the window to a different screen. output_max_linear_value is the new value.


theme_changed() 🔗

Émis lorsque la notification NOTIFICATION_THEME_CHANGED est envoyée.


title_changed() 🔗

Émis lorsque le texte de la barre du titre de la fenêtre est modifié.


titlebar_changed() 🔗

Émis lorsque les décorations de la barre du titre de la fenêtre sont modifiées, p.ex. la fenêtre macOS entre/sort du mode plein écran, ou le drapeau d'extension au titre est changé.


visibility_changed() 🔗

Émis lorsque la Window est rendue visible ou disparaît.


window_input(event: InputEvent) 🔗

Émis lorsque la Window a actuellement le focus et reçoit une entrée, en passant l'évènement reçu en tant qu'arguement. La position de l'événement, si elle est présente, est dans le système de coordonnées de l'intégrateur.


Énumérations

enum Mode: 🔗

Mode MODE_WINDOWED = 0

Mode fenêtré, c'est-à-dire que Window n'occupe pas l'écran entier (sauf si définie à la taille de l'écran).

Mode MODE_MINIMIZED = 1

Mode de fenêtre minimisée, c.-à-d. Window n'est pas visible et est disponible dans la liste des fenêtres du gestionnaire de fenêtre. Se produit normalement lorsque le bouton de minimisation est appuyé.

Mode MODE_MAXIMIZED = 2

Mode de fenêtre maximisée, c.-à-d. Window occupera tout l'écran sauf la barre des tâches et affichera toujours ses bordures. Se produit normalement lorsque le bouton de maximisation est appuyé.

Mode MODE_FULLSCREEN = 3

Mode plein écran avec support multi-fenêtres complet.

La fenêtre en plein écran couvre toute la zone d'affichage d'un écran et n'a pas de décorations. Le mode vidéo de l'écran n'est pas modifié.

** Sur Android :** Cela active le mode immersif.

** Sur macOS :** Un nouveau bureau est utilisé pour afficher le projet en cours d'exécution.

Note : Quelle que soit la plate-forme, activer le plein écran changera la taille de la fenêtre pour correspondre à la taille du moniteur. Par conséquent, assurez-vous que votre projet supporte des résolutions multiples lors de l'activation du mode plein écran.

Mode MODE_EXCLUSIVE_FULLSCREEN = 4

Un mode de fenêtre simple en plein écran. Ce mode a moins de surcoût, mais une seule fenêtre peut être ouverte sur un écran donné à la fois (ouvrir une fenêtre enfant ou changer d'application déclenchera une transition de plein écran).

La fenêtre en plein écran couvre l'ensemble de la zone d'affichage d'un écran et n'a aucune bordure ou de décoration. Le mode vidéo de l'écran n'est pas modifié.

Note : Ce mode pourrait ne pas fonctionner avec des logiciels d'enregistrement d'écran.

** Sur Android :** Cela active le mode immersif.

Sur Windows : Selon le pilote vidéo, la transition vers le plein écran peut forcer l'écran à devenir noir pendant un court moment.

** Sur macOS :** Un nouveau bureau est utilisé pour afficher le projet en cours. Le mode plein écran exclusif empêche le Dock et le Menu de s'afficher lorsque le pointeur de la souris survole le bord de l'écran.

** Sur Linux (X11) :** Le mode plein écran exclusif contourne le compositeur.

Sur Linux (Wayland) : Équivalent à MODE_FULLSCREEN.

Note : Quelle que soit la plate-forme, activer le plein écran va modifier taille de la fenêtre pour correspondre à la taille du moniteur. Par conséquent, assurez-vous que votre projet supporte des résolutions multiples lors de l'activation du mode plein écran.


enum Flags: 🔗

Flags FLAG_RESIZE_DISABLED = 0

La fenêtre ne peut pas être redimensionnée en tirant sur sa poignée de redimensionnement. Il est encore possible de redimensionner la fenêtre en utilisant size. Ce drapeau est ignoré pour les fenêtres en plein écran. Défini avec unresizable.

Flags FLAG_BORDERLESS = 1

La fenêtre n'a pas de barre de titre natif et d'autres décorations. Ce drapeau est ignoré pour les fenêtres en plein écran. Défini avec borderless.

Flags FLAG_ALWAYS_ON_TOP = 2

La fenêtre flotte au dessus de toutes les autres fenêtres. Ce drapeau est ignoré pour les fenêtres en plein écran. Défini avec always_on_top.

Flags FLAG_TRANSPARENT = 3

L'arrière-plan de la fenêtre peut être transparent. Défini avec transparent.

Note : Ce drapeau n'a aucun effet si ProjectSettings.display/window/per_pixel_transparency/allowed ou le Viewport.transparent_bg de la fenêtre est défini à false.

Flags FLAG_NO_FOCUS = 4

La fenêtre ne peut pas recevoir le focus. Une fenêtre sans focus ignorera toutes les entrées, sauf les clics de souris. Défini avec unfocusable.

Flags FLAG_POPUP = 5

Window is part of menu or OptionButton dropdown. This flag can't be changed when the window is visible. An active popup window will exclusively receive all input, without stealing focus from its parent. Popup windows are automatically closed when uses click outside it, or when an application is switched. Popup window must have transient parent set (see transient).

Note: This flag has no effect in embedded windows (unless said window is a Popup).

Flags FLAG_EXTEND_TO_TITLE = 6

Le contenu de la fenêtre est élargi à la taille de la fenêtre. Contrairement à la fenêtre sans bords, le cadre est laissé intact et peut être utilisé pour redimensionner la fenêtre, la barre de titre est transparente, mais dispose des boutons de minimisation/maximisation/fermeture. Défini avec extend_to_title.

Note : Ce drapeau n'est implémenté que sur macOS.

Note : Ce drapeau n'a aucun effet dans les fenêtres intégrées.

Flags FLAG_MOUSE_PASSTHROUGH = 7

Tous les événements de la souris sont passés à la fenêtre sous-jacente de la même application.

Note : Ce drapeau n'a aucun effet dans les fenêtres intégrées.

Flags FLAG_SHARP_CORNERS = 8

Le style de fenêtre est redéfini, forçant des coins pointus.

Note : Cette option n'a aucun effet dans les fenêtres intégrées.

Note : Cette option n'est implémentée que sous Windows (11).

Flags FLAG_EXCLUDE_FROM_CAPTURE = 9

La fenêtre est exclue des captures d'écran prises par DisplayServer.screen_get_image(), DisplayServer.screen_get_image_rect(), et DisplayServer.screen_get_pixel().

Note : Ce drapeau n'a aucun effet dans les fenêtres intégrées.

Note : Ce drapeau est implémenté sur macOS et Windows (10, 20H1).

Note : Définir ce drapeau empêchera les méthodes standard de capture d'écran de capturer une image de fenêtre, mais ne garantit PAS que d'autres applications ne pourront pas capturer une image. Il ne doit pas être utilisé comme mesure de DRM ou de sécurité.

Flags FLAG_POPUP_WM_HINT = 10

Signals the window manager that this window is supposed to be an implementation-defined "popup" (usually a floating, borderless, untileable and immovable child window).

Flags FLAG_MINIMIZE_DISABLED = 11

Le bouton de minimisation de la fenêtre est désactivé.

Note : Ce drapeau est implémenté sur macOS et Windows.

Flags FLAG_MAXIMIZE_DISABLED = 12

Le bouton de maximisation de la fenêtre est désactivé.

Note : Ce drapeau est implémenté sur macOS et Windows.

Flags FLAG_MAX = 13

Valeur maximale pour les drapeaux Flags.


enum ContentScaleMode: 🔗

ContentScaleMode CONTENT_SCALE_MODE_DISABLED = 0

The content will not be scaled to match the Window's size (content_scale_size is ignored).

ContentScaleMode CONTENT_SCALE_MODE_CANVAS_ITEMS = 1

Le contenu sera rendu à la taille cible. Ceci est plus cher en performances que CONTENT_SCALE_MODE_VIEWPORT, mais fournit de meilleurs résultats.

ContentScaleMode CONTENT_SCALE_MODE_VIEWPORT = 2

Le contenu sera rendu à la taille de base et ensuite échelonné à la taille cible. Plus performant que CONTENT_SCALE_MODE_CANVAS_ITEMS, mais résulte en une image pixelisée.


enum ContentScaleAspect: 🔗

ContentScaleAspect CONTENT_SCALE_ASPECT_IGNORE = 0

Le rapport d'aspect sera ignoré. L'échelle va simplement étirer le contenu pour correspondre à la taille cible.

ContentScaleAspect CONTENT_SCALE_ASPECT_KEEP = 1

Le rapport d'aspect du contenu sera préservé. Si la taille de la cible a un rapport différent de la base, l'image sera centrée et des barres noires apparaîtront sur les côtés gauche et droit.

ContentScaleAspect CONTENT_SCALE_ASPECT_KEEP_WIDTH = 2

Le contenu peut être étendu verticalement. Redimensionner horizontalement résultera en le maintien du rapport de largeur et des barres noires sur les côtés gauche et droit.

ContentScaleAspect CONTENT_SCALE_ASPECT_KEEP_HEIGHT = 3

Le contenu peut être étendu horizontalement. Redimensionner verticalement résultera en le maintien du rapport de hauteur et des barres noires en haut et en bas.

ContentScaleAspect CONTENT_SCALE_ASPECT_EXPAND = 4

Le rapport d'aspect du contenu sera préservé. Si la taille de cible a un rapport différent de la taille de base, le contenu restera dans le coin supérieur gauche et ajoutera une zone visible supplémentaire dans l'espace étiré.


enum ContentScaleStretch: 🔗

ContentScaleStretch CONTENT_SCALE_STRETCH_FRACTIONAL = 0

Le contenu sera étiré selon un facteur fractionnel. Cela remplit tout l'espace disponible dans la fenêtre, mais cause du "pixel wobble" en raison de l'échelle inégale des pixels.

ContentScaleStretch CONTENT_SCALE_STRETCH_INTEGER = 1

Le contenu sera étiré seulement selon un facteur entier, en conservant les pixels nets. Cela peut laisser un fond noir visible sur les bords de la fenêtre en fonction de la taille de la fenêtre.


enum LayoutDirection: 🔗

LayoutDirection LAYOUT_DIRECTION_INHERITED = 0

Direction de mise en page automatique, déterminée à partir de la direction de mise en page de la fenêtre parente.

LayoutDirection LAYOUT_DIRECTION_APPLICATION_LOCALE = 1

Direction de mise en page automatique, déterminée à partir de la langue actuelle.

LayoutDirection LAYOUT_DIRECTION_LTR = 2

Direction de disposition de gauche à droite.

LayoutDirection LAYOUT_DIRECTION_RTL = 3

Disposition de direction de droite à gauche.

LayoutDirection LAYOUT_DIRECTION_SYSTEM_LOCALE = 4

Direction de mise en page automatique, déterminée à partir de la langue du système.

LayoutDirection LAYOUT_DIRECTION_MAX = 5

Représente la taille de l'énumération LayoutDirection.

LayoutDirection LAYOUT_DIRECTION_LOCALE = 1

Obsolète : Use LAYOUT_DIRECTION_APPLICATION_LOCALE instead.


enum WindowInitialPosition: 🔗

WindowInitialPosition WINDOW_INITIAL_POSITION_ABSOLUTE = 0

La position initiale de la fenêtre est déterminée par position.

WindowInitialPosition WINDOW_INITIAL_POSITION_CENTER_PRIMARY_SCREEN = 1

La position initiale de la fenêtre est le centre de l'écran principal.

WindowInitialPosition WINDOW_INITIAL_POSITION_CENTER_MAIN_WINDOW_SCREEN = 2

La position initiale de la fenêtre est le centre de l'écran de la fenêtre principale.

WindowInitialPosition WINDOW_INITIAL_POSITION_CENTER_OTHER_SCREEN = 3

La position initiale de la fenêtre est le centre de l'écran current_screen.

WindowInitialPosition WINDOW_INITIAL_POSITION_CENTER_SCREEN_WITH_MOUSE_FOCUS = 4

La position initiale de la fenêtre est le centre de l'écran contenant le pointeur de la souris.

WindowInitialPosition WINDOW_INITIAL_POSITION_CENTER_SCREEN_WITH_KEYBOARD_FOCUS = 5

La position initiale de la fenêtre est le centre de l'écran contenant la fenêtre avec le focus du clavier.


Constantes

NOTIFICATION_VISIBILITY_CHANGED = 30 🔗

Émis lorsque la visibilité de la Window change, juste avant visibility_changed.

NOTIFICATION_THEME_CHANGED = 32 🔗

Envoyé quand le nœud a besoin de rafraîchir ses éléments de thème. Cela se produit dans l'un des cas suivants :

  • La propriété theme est modifiée sur ce nœud ou l'un de ses ancêtres.

  • La propriété theme_type_variation est modifiée sur ce nœud.

  • Le nœud entre dans l'arborescence de la scène.

Note : En tant qu'optimisation, cette notification ne sera pas envoyée lors de modifications qui se produisent alors que ce nœud est à l'extérieur de l'arborescence de la scène. Au lieu de cela, toutes les mises à jour d'élément de thème peuvent être appliquées en une fois lorsque le nœud entre dans l'arborescence de la scène.


Descriptions des propriétés

String accessibility_description = "" 🔗

  • void set_accessibility_description(value: String)

  • String get_accessibility_description()

La description facilement lisible du nœud qui est rapportée aux applications d'assistance.


String accessibility_name = "" 🔗

  • void set_accessibility_name(value: String)

  • String get_accessibility_name()

Le nom facilement lisible du nœud qui est rapporté aux applications d'assistance.


bool always_on_top = false 🔗

Si true, la fenêtre sera au-dessus de toutes les autres fenêtres. Ne fonctionne pas si transient est activé.


bool auto_translate 🔗

  • void set_auto_translate(value: bool)

  • bool is_auto_translating()

Obsolète : Use Node.auto_translate_mode and Node.can_auto_translate() instead.

Active/désactive si du texte devrait automatiquement changer en sa version traduite selon la langue actuelle.


bool borderless = false 🔗

Si true, la fenêtre n'aura pas de bordures.


ContentScaleAspect content_scale_aspect = 0 🔗

Spécifie comment le rapport d'aspect du contenu se comporte lorsque la Window est redimensionnée. L'aspect de base est déterminé par content_scale_size.


float content_scale_factor = 1.0 🔗

  • void set_content_scale_factor(value: float)

  • float get_content_scale_factor()

Spécifie l'échelle de base du contenu de la Window lorsque sa size est égale à content_scale_size. Voir aussi Viewport.get_stretch_transform().


ContentScaleMode content_scale_mode = 0 🔗

Spécifie comment le contenu est mis à l'échelle lorsque la Window est redimensionnée.


Vector2i content_scale_size = Vector2i(0, 0) 🔗

  • void set_content_scale_size(value: Vector2i)

  • Vector2i get_content_scale_size()

The content's base size in "virtual" pixels. Not to be confused with size, which sets the actual window's physical size in pixels. If set to a value greater than 0 and content_scale_mode is set to a value other than CONTENT_SCALE_MODE_DISABLED, the Window's content will be scaled when the window is resized to a different size. Higher values will make the content appear smaller, as it will be able to fit more of the project in view. On the root Window, this is set to match ProjectSettings.display/window/size/viewport_width and ProjectSettings.display/window/size/viewport_height by default.

For example, when using CONTENT_SCALE_MODE_CANVAS_ITEMS and content_scale_size set to Vector2i(1280, 720), using a window size of 2560×1440 will make 2D elements appear at double their original size, as the content is scaled by a factor of 2.0 (2560.0 / 1280.0 = 2.0, 1440.0 / 720.0 = 2.0).

See the Base size section of the Multiple resolutions documentation for details.


ContentScaleStretch content_scale_stretch = 0 🔗

La politique à utiliser pour déterminer le facteur d'échelle finale pour les éléments 2D. Cela affecte la façon dont content_scale_factor est appliqué, en plus du facteur d'échelle automatique déterminé par content_scale_size.


int current_screen 🔗

  • void set_current_screen(value: int)

  • int get_current_screen()

L'écran sur lequel est actuellement la fenêtre.


bool exclude_from_capture = false 🔗

Si true, la Window est exclue des captures d'écran prises par DisplayServer.screen_get_image(), DisplayServer.screen_get_image_rect() et DisplayServer.screen_get_pixel().

Note : Cette propriété est implémentée sur macOS et Windows.

Note : L'activation de ce paramètre empêchera les méthodes standard de capture d'écran de capturer une image de la fenêtre, mais ne garantit PAS que d'autres applications ne pourront pas capturer une image. Il ne doit pas être utilisé comme mesure de DRM ou de sécurité.


bool exclusive = false 🔗

  • void set_exclusive(value: bool)

  • bool is_exclusive()

Si true, la Window sera en mode exclusif. Les fenêtres exclusives sont toujours en haut de leur parent et bloqueront toutes les entrées vers la Window parente.

Nécessite que transient soit activé pour fonctionner.


bool extend_to_title = false 🔗

Si true, le contenu de la Window est étendu à la taille complète de la fenêtre, la barre du titre de la fenêtre est transparente.

Note : Cette propriété n'est implémentée que sur macOS.

Note : Cette propriété ne fonctionne qu'avec des fenêtres natives.


bool force_native = false 🔗

  • void set_force_native(value: bool)

  • bool get_force_native()

Si true, une fenêtre native sera utilisée indépendamment des paramètres du viewport parent et du projet.


bool hdr_output_requested = false 🔗

  • void set_hdr_output_requested(value: bool)

  • bool is_hdr_output_requested()

If true, requests HDR output for the Window, falling back to SDR if not supported, and automatically switching between HDR and SDR as the window moves between screens, screen capabilities change, or system settings are modified. This will internally force Viewport.use_hdr_2d to be enabled on the main Viewport. All other SubViewport of this Window must have their Viewport.use_hdr_2d property enabled to produce HDR output.


WindowInitialPosition initial_position = 0 🔗

Spécifie le type initial de position pour la Window.


bool keep_title_visible = false 🔗

  • void set_keep_title_visible(value: bool)

  • bool get_keep_title_visible()

Si true, la largeur de la Window est étendue pour garder le texte de la barre du titre entièrement visible.


Vector2i max_size = Vector2i(0, 0) 🔗

Si différent de zéro, la Window ne peut être redimensionné pour être plus grande que cette taille.

Note : Cette propriété sera ignorée si la valeur est inférieure à min_size.


bool maximize_disabled = false 🔗

Si true, le bouton de maximisation de la Window est désactivé.

Note : Si les boutons de minimisation et de minimisation sont tous deux désactivés, les boutons sont entièrement cachés, et seul le bouton de fermeture est visible.

Note : Cette propriété est implémentée uniquement sur macOS et Windows.


Vector2i min_size = Vector2i(0, 0) 🔗

Si différent de zéro, la Window ne peut être redimensionnée pour être plus petite que cette taille.

Note : Cette propriété sera ignorée en faveur de get_contents_minimum_size() si wrap_controls est activé et si sa taille est plus grande.


bool minimize_disabled = false 🔗

Si true, le bouton de minimisation de la Window est désactivé.

Note : Si les boutons de minimisation et de minimisation sont tous deux désactivés, les boutons sont entièrement cachés, et seul le bouton de fermeture est visible.

Note : Cette propriété est implémentée uniquement sur macOS et Windows.


Mode mode = 0 🔗

  • void set_mode(value: Mode)

  • Mode get_mode()

Définit le mode actuel de la fenêtre.

Note : Le mode plein écran n'est pas un plein écran exclusif sur Windows et Linux.

Note : Cette méthode ne fonctionne qu'avec des fenêtres natives, c'est-à-dire la fenêtre principale et les nœuds dérivés de Window lorsque Viewport.gui_embed_subwindows est désactivé dans le viewport principal.


bool mouse_passthrough = false 🔗

Si true, tous les événements de la souris seront transmis à la fenêtre sous-jacente de la même application. Voir aussi mouse_passthrough_polygon.

Note : Cette propriété est implémentée sur Linux (X11), macOS et Windows.

Note : Cette propriété ne fonctionne qu'avec des fenêtres natives.


PackedVector2Array mouse_passthrough_polygon = PackedVector2Array() 🔗

Définit une région polygonale de la fenêtre qui accepte les événements de la souris. Les évènements de souris en dehors de cette région passeront au travers.

Passer un tableau vide désactivera cet effet (tous les événements de la souris seront acceptés par la fenêtre, ce qui est le comportement par défaut).

# Définir une région, avec un nœud Path2D.
$Window.mouse_passthrough_polygon = $Path2D.curve.get_baked_points()

# Définir une région, avec un nœud Polygon2D.
$Window.mouse_passthrough_polygon = $Polygon2D.polygon

# Rétablir la région par défaut.
$Window.set_window_mouse_passthrough= []

Note : Cette propriété est ignorée si mouse_passthrough est défini à true.

Note : Sous Windows, la partie de la fenêtre en dehors de la région définie n'est pas dessinée, alors qu'elle l'est sous Linux (X11) et macOS.

Note : Cette méthode est implémentée sur Linux (X11), macOS et Windows.

Note: The returned array is copied and any changes to it will not update the original property value. See PackedVector2Array for more details.


Rect2i nonclient_area = Rect2i(0, 0, 0, 0) 🔗

  • void set_nonclient_area(value: Rect2i)

  • Rect2i get_nonclient_area()

If set, defines the window's custom decoration area which will receive mouse input, even if normal input to the window is blocked (such as when it has an exclusive child opened). See also nonclient_window_input.


bool popup_window = false 🔗

Si true, la Window sera considérée comme une popup. Les popups sont des sous-fenêtres qui ne s'affichent pas comme des fenêtres séparées dans la liste des fenêtres du gestionnaire de fenêtre du système et qui enverront une demande de fermeture lorsque un clic est effectué à l'extérieur d'elles (sauf si exclusive est activé).


bool popup_wm_hint = false 🔗

If true, the Window will signal to the window manager that it is supposed to be an implementation-defined "popup" (usually a floating, borderless, untileable and immovable child window).


Vector2i position = Vector2i(0, 0) 🔗

La position de la fenêtre en pixels.

Si ProjectSettings.display/window/subwindows/embed_subwindows vaut false, la position est dans les coordonnées de l'écran absolues. Cela s'applique généralement aux plugins d'éditeur. Si le paramètre vaut true, la position de la fenêtre est dans les coordonnées de son Viewport parent.

Note : Cette propriété ne fonctionne que si initial_position est défini à WINDOW_INITIAL_POSITION_ABSOLUTE.


bool sharp_corners = false 🔗

Si true, la Window remplacera le style de fenêtre OS pour afficher des coins pointus.

Note : Cette propriété est implémentée uniquement sur Windows (11).

Note : Cette propriété ne fonctionne qu'avec des fenêtres natives.


Vector2i size = Vector2i(100, 100) 🔗

The window's size in pixels. See also content_scale_size, which doesn't set the window's physical size but affects how scaling works relative to the current content_scale_mode.


Theme theme 🔗

La ressource Theme que ce nœud et tous ses enfants Control et Window utilisent. Si un nœud enfant a son propre ensemble de ressources Theme, les éléments de thème sont fusionnés avec les définitions de l'enfant ayant une priorité plus élevée.

Note : Les styles de Window n'auront aucun effet à moins que la fenêtre ne soit intégrée.


StringName theme_type_variation = &"" 🔗

Le nom d'une variation de type de thème utilisée par cette Window pour rechercher ses propres éléments de thème. Voir Control.theme_type_variation pour plus de détails.


String title = "" 🔗

Le titre de la fenêtre. Si la Window est native, les styles de titre définis dans le Theme n'auront aucun effet.


bool transient = false 🔗

  • void set_transient(value: bool)

  • bool is_transient()

Si true, la Window est transitoire, c'est-à-dire qu'elle est considérée comme un enfant d'une autre Window. La fenêtre transitoire sera détruite avec son parent transitoire et redonnera le focus à son parent lorsqu'elle sera fermée. La fenêtre transitoire est affichée par dessus une fenêtre parente en plein écran non exclusif. Les fenêtres transitoires ne peuvent pas entrer en mode plein écran.

Notez que le comportement peut être différent selon la plate-forme.


bool transient_to_focused = false 🔗

  • void set_transient_to_focused(value: bool)

  • bool is_transient_to_focused()

Si true, et la Window a transient d'actif, cette fenêtre deviendra (au moment de devenir visible) transitoire à la fenêtre ayant actuellement le focus au lieu de la fenêtre parente immédiate dans la hiérarchie. Notez que le parent transitoire est assigné au moment où cette fenêtre devient visible, de sorte que le changer après n'a pas d'effet jusqu'à ce qu'elle soit ré-affichée.


bool transparent = false 🔗

Si true, le fond de la Window peut être transparent. Ceci est généralement utilisé avec des fenêtres intégrées.

Note : Le support de la transparence est implémenté sur Linux, macOS et Windows, mais la disponibilité peut varier en fonction du pilote GPU, du gestionnaire d'affichage et des capacités du compositeur.

Note : Cette propriété n'a aucun effet si ProjectSettings.display/window/per_pixel_transparency/allowed est défini à false.


bool unfocusable = false 🔗

Si true, la Window ne peut avoir le focus ni être interagie avec. Elle peut encore être visible.


bool unresizable = false 🔗

Si true, la fenêtre ne peut pas être redimensionnée.


bool visible = true 🔗

  • void set_visible(value: bool)

  • bool is_visible()

Si true, la fenêtre est visible.


bool wrap_controls = false 🔗

  • void set_wrap_controls(value: bool)

  • bool is_wrapping_controls()

Si true, la taille de la fenêtre sera automatiquement mise à jour lorsqu'un nœud enfant est ajouté ou enlevé, en ignorant min_size si la nouvelle taille est plus grande.

Si false, vous devez appeler manuellement child_controls_changed().


Descriptions des méthodes

Vector2 _get_contents_minimum_size() virtual const 🔗

Méthode virtuelle implémentée par l'utilisateur. Redéfinit la valeur renvoyée par get_contents_minimum_size().


void add_theme_color_override(name: StringName, color: Color) 🔗

Crée une redéfinition locale pour une Color de thème nommée name. Les redéfinitions locales ont toujours la priorité lors de la récupération des éléments du thème d'un contrôle. Une redéfinition peut être retirée avec remove_theme_color_override().

Voir aussi get_theme_color() et Control.add_theme_color_override() pour plus de détails.


void add_theme_constant_override(name: StringName, constant: int) 🔗

Crée une redéfinition locale pour une constante de thème nommée name. Les redéfinitions locales ont toujours la priorité lors de la récupération des éléments de thème pour le contrôle. Une surcharge peut être supprimée avec la méthode remove_theme_constant_override().

Voir aussi get_theme_constant().


void add_theme_font_override(name: StringName, font: Font) 🔗

Crée une redéfinition locale pour une Font de thème nommée name. Les redéfinitions locales ont toujours la priorité lors de la récupération des éléments de thème pour le contrôle. Une redéfinition peut être supprimée avec la valeur remove_theme_font_override().

Voir aussi get_theme_font().


void add_theme_font_size_override(name: StringName, font_size: int) 🔗

Crée une redéfinition locale pour une taille de police de thème nommée name. Les redéfinitions locales ont toujours la priorité lors de la récupération des éléments de thème pour le contrôle. Une redéfinition peut être supprimée avec la valeur remove_theme_font_size_override().

Voir aussi get_theme_font_size().


void add_theme_icon_override(name: StringName, texture: Texture2D) 🔗

Crée une redéfinition locale pour une icône de thème nommée name. Les redéfinitions locales ont toujours la priorité lors de la récupération des éléments de thème pour le contrôle. Une redéfinition peut être supprimée avec la valeur remove_theme_icon_override().

Voir aussi get_theme_icon().


void add_theme_stylebox_override(name: StringName, stylebox: StyleBox) 🔗

Crée une redéfinition locale pour une StyleBox de thème nommée name. Les redéfinitions locales ont toujours la priorité lors de la récupération des éléments du thème d'un contrôle. Une redéfinition peut être retirée avec remove_theme_stylebox_override().

Voir aussi get_theme_stylebox() et Control.add_theme_stylebox_override() pour plus de détails.


void begin_bulk_theme_override() 🔗

Empêche les méthodes *_theme_*_override d'émettre NOTIFICATION_THEME_CHANGED jusqu'à ce que end_bulk_theme_override() soit appelée.


bool can_draw() const 🔗

Renvoie si la fenêtre est dessinée à l'écran.


void child_controls_changed() 🔗

Demande une mise à jour de la taille de la Window pour contenir les nœuds Control sous-jacents.


void end_bulk_theme_override() 🔗

Termine une mise à jour de masse de redéfinition du thème. Voir begin_bulk_theme_override().


Vector2 get_contents_minimum_size() const 🔗

Renvoie la taille minimale combinée des nœuds Control enfants de la fenêtre. Utilisez child_controls_changed() pour la mettre à jour lorsque les nœuds enfants ont changé.

La valeur renvoyée par cette méthode peut être redéfinie par _get_contents_minimum_size().


bool get_flag(flag: Flags) const 🔗

Renvoie true si le drapeau flag est défini.


Window get_focused_window() static 🔗

Renvoie la fenêtre ayant le focus.


LayoutDirection get_layout_direction() const 🔗

Renvoie la direction de la mise en page et la direction d'écriture du texte.


float get_output_max_linear_value() const 🔗

Returns the maximum value for linear color components that can be displayed in this window, regardless of SDR or HDR output. Returns 1.0 if HDR is not enabled or not supported. The output_max_linear_value_changed signal will be emitted whenever this value changes.

This value is used by tonemapping and other Environment effects to ensure that bright colors are presented in the range that can be displayed by this window. When using this maximum linear value in your project, it should only be used to present colors directly to the screen without tonemapping and without influencing lighting, post-processing effects, or surrounding color. The following is an example that produces the brightest purple color that the screen can produce:

func _process(_delta):
    # output_max_linear_value may change often, so do this every frame.
    var max_linear_value = get_window().get_output_max_linear_value()
    # Replace this with your color:
    var original_color = Color.PURPLE
    # Normalize to max_linear_value to produce the brightest color possible,
    # regardless of SDR or HDR output:
    var bright_color = normalize_color(original_color, max_linear_value)


func normalize_color(srgb_color, max_linear_value = 1.0):
    # Color must be linear-encoded to use math operations.
    var linear_color = srgb_color.srgb_to_linear()
    var max_rgb_value = maxf(linear_color.r, maxf(linear_color.g, linear_color.b))
    var brightness_scale = max_linear_value / max_rgb_value
    linear_color *= brightness_scale
    # Undo changes to the alpha channel, which should not be modified.
    linear_color.a = srgb_color.a
    # Convert back to nonlinear sRGB encoding, which is required for Color in
    # Godot unless stated otherwise.
    return linear_color.linear_to_srgb()

Note: You will need to convert sRGB colors to linear before multiplying by this value to get correct results.


Vector2i get_position_with_decorations() const 🔗

Renvoie la position de la fenêtre en prenant en compte sa bordure.

Note : Si visible vaut false, cette méthode renvoie la même valeur que position.


Vector2i get_size_with_decorations() const 🔗

Renvoie la taille de la fenêtre, y compris sa bordure.

Note : Si visible vaut false, cette méthode renvoie la même valeur que size.


Color get_theme_color(name: StringName, theme_type: StringName = &"") const 🔗

Renvoie une Color du premier Theme correspondant dans l'arborescence si ce Theme a un élément de couleur nommé name et du type de thème theme_type.

Voir Control.get_theme_color() pour plus de détails.


int get_theme_constant(name: StringName, theme_type: StringName = &"") const 🔗

Renvoie une constante du premier Theme correspondant dans l'arborescence si ce Theme a un élément de constante nommé name et du type de thème theme_type.

Voir Control.get_theme_color() pour plus de détails.


float get_theme_default_base_scale() const 🔗

Renvoie la valeur d'échelle de base par défaut du premier Theme correspondant dans l'arborescence si ce Theme a une valeur Theme.default_base_scale valide.

Voir Control.get_theme_color() pour plus de détails.


Font get_theme_default_font() const 🔗

Renvoie la police par défaut du premier Theme correspondant dans l'arborescence si ce Theme a une valeur Theme.default_font valide.

Voir Control.get_theme_color() pour plus de détails.


int get_theme_default_font_size() const 🔗

Renvoie la taille de police par défaut du premier Theme correspondant dans l'arborescence si ce Theme a une valeur Theme.default_font_size valide.

Voir Control.get_theme_color() pour plus de détails.


Font get_theme_font(name: StringName, theme_type: StringName = &"") const 🔗

Renvoie une Font du premier Theme correspondant dans l'arborescence si ce Theme a un élément de police nommé name et du type de thème theme_type.

Voir Control.get_theme_color() pour plus de détails.


int get_theme_font_size(name: StringName, theme_type: StringName = &"") const 🔗

Renvoie une taille de police du premier Theme correspondant dans l'arborescence si ce Theme a un élément de taille de police nommé name et du type de thème theme_type.

Voir Control.get_theme_color() pour plus de détails.


Texture2D get_theme_icon(name: StringName, theme_type: StringName = &"") const 🔗

Renvoie une icône du premier Theme correspondant dans l'arborescence si ce Theme a un élément d'icône nommé name et du type de thème theme_type.

Voir Control.get_theme_color() pour plus de détails.


StyleBox get_theme_stylebox(name: StringName, theme_type: StringName = &"") const 🔗

Renvoie une StyleBox du premier Theme correspondant dans l'arborescence si ce Theme a un élément de stylebox nommé name et du type de thème theme_type.

Voir Control.get_theme_color() pour plus de détails.


int get_window_id() const 🔗

Renvoie l'identifiant de la fenêtre.


void grab_focus() 🔗

Force la fenêtre à saisir le focus, lui permettant de recevoir l'entrée utilisateur.


bool has_focus() const 🔗

Renvoie true si la fenêtre a le focus.


bool has_theme_color(name: StringName, theme_type: StringName = &"") const 🔗

Renvoie true s'il y a un Theme correspondant dans l'arborescence qui a un élément de couleur nommé name et du type de thème theme_type.

Voir Control.get_theme_color() pour plus de détails.


bool has_theme_color_override(name: StringName) const 🔗

Renvoie true s'il y a une redéfinition locale pour une Color de thème nommée name dans ce nœud Control.

Voir add_theme_color_override().


bool has_theme_constant(name: StringName, theme_type: StringName = &"") const 🔗

Renvoie true s'il y a un Theme correspondant dans l'arborescence qui a un élément de constante nommé name et du type de thème theme_type.

Voir Control.get_theme_color() pour plus de détails.


bool has_theme_constant_override(name: StringName) const 🔗

Renvoie true s'il y a une redéfinition locale pour une constante de thème nommée name dans ce nœud Control.

Voir add_theme_constant_override().


bool has_theme_font(name: StringName, theme_type: StringName = &"") const 🔗

Renvoie true s'il y a un Theme correspondant dans l'arborescence qui a un élément de police nommé name et du type de thème theme_type.

Voir Control.get_theme_color() pour plus de détails.


bool has_theme_font_override(name: StringName) const 🔗

Renvoie true s'il y a une redéfinition pour une Font de thème nommée name dans ce nœud Control.

Voir add_theme_font_override().


bool has_theme_font_size(name: StringName, theme_type: StringName = &"") const 🔗

Renvoie true s'il y a un Theme correspondant dans l'arborescence qui a un élément de taille de police nommé name et du type de thème theme_type.

Voir Control.get_theme_color() pour plus de détails.


bool has_theme_font_size_override(name: StringName) const 🔗

Renvoie true s'il y a une redéfinition locale pour une taille de police de thème nommée name dans ce nœud Control.

Voir add_theme_font_size_override().


bool has_theme_icon(name: StringName, theme_type: StringName = &"") const 🔗

Renvoie true s'il y a un Theme correspondant dans l'arborescence qui a un élément d'icône nommé name et du type de thème theme_type.

Voir Control.get_theme_color() pour plus de détails.


bool has_theme_icon_override(name: StringName) const 🔗

Renvoie true s'il y a une redéfinition locale pour une icône de thème nommée name dans ce nœud Control.

Voir add_theme_icon_override().


bool has_theme_stylebox(name: StringName, theme_type: StringName = &"") const 🔗

Renvoie true s'il y a un Theme correspondant dans l'arborescence qui a un élément de stylebox nommé name et du type de thème theme_type.

Voir Control.get_theme_color() pour plus de détails.


bool has_theme_stylebox_override(name: StringName) const 🔗

Renvoie true s'il y a une redéfinition locale pour une StyleBox de thème nommée name dans ce nœud Control.

Voir add_theme_stylebox_override().


void hide() 🔗

Cache la fenêtre. Ceci n'est pas identique à l'état minimisé. Une fenêtre cachée ne peut pas être interagie avec et doit être rendue visible avec show().


bool is_embedded() const 🔗

Renvoie true si la fenêtre est actuellement intégrée dans une autre fenêtre.


bool is_layout_rtl() const 🔗

Renvoie true si la mise en page est de droite à gauche.


bool is_maximize_allowed() const 🔗

Renvoie true si la fenêtre peut être maximisée (le bouton de maximisation est activé).


bool is_using_font_oversampling() const 🔗

Renvoie true si le sur-échantillonnage de la police est activé. Voir set_use_font_oversampling().


void move_to_center() 🔗

Centers the window in the current screen. If the window is embedded, it is centered in the embedder Viewport instead.


void move_to_foreground() 🔗

Obsolète : Use grab_focus() instead.

Force la fenêtre à saisir le focus, lui permettant de recevoir l'entrée utilisateur.


void popup(rect: Rect2i = Rect2i(0, 0, 0, 0)) 🔗

Affiche la Window et le rend transitoire (voir transient). Si un rectangle rect est fourni, il sera défini comme la taille de la Window. Échoue si appelée sur la fenêtre principale.

Si ProjectSettings.display/window/subwindows/embed_subwindows vaut true (mode fenêtre unique), les coordonnées du rect sont globales et relatives au coin supérieur gauche de la fenêtre principale (hors décorations de la fenêtre). Si les coordonnées de position du rect sont négatives, la fenêtre sera située à l'extérieur de la fenêtre principale et ne sera ainsi peut-être pas visible.

Si ProjectSettings.display/window/subwindows/embed_subwindows vaut false (mode multi-fenêtre), les coordonnées du rect sont globales et relatives au coin supérieur gauche de l'écran le plus à gauche. Si les coordonnées de position du rect sont négatives, la fenêtre sera placée au coin supérieur gauche de l'écran.

Note : rect doit être dans les coordonnées globales si spécifié.


void popup_centered(minsize: Vector2i = Vector2i(0, 0)) 🔗

Fait apparaître la Window comme une popup au centre de l'écran actuel, avec en option une taille minimale donnée. Si la Window est intégrée, elle sera à la place centrée dans le Viewport parent.

Note : L'appeler avec la valeur par défaut de minsize équivaut à l'appeler avec size.


void popup_centered_clamped(minsize: Vector2i = Vector2i(0, 0), fallback_ratio: float = 0.75) 🔗

Fait apparaître la Window comme une popup centrée dans sa Window parente. fallback_ratio détermine la taille maximale de la Window, en relation avec son parent.

Note : L'appeler avec la valeur par défaut de minsize équivaut à l'appeler avec size.


void popup_centered_ratio(ratio: float = 0.8) 🔗

Si la Window est intégrée, fait apparaître la Window comme une popup centrée à l'intérieur de son intégrateur et définit sa taille en tant que ratio de la taille de l'intégrateur.

Si la Window est une fenêtre native, fait apparaître la Window comme une popup centrée à l'intérieur de l'écran de sa Window parente et définit sa taille en tant que ratio de la taille de l'écran.


void popup_exclusive(from_node: Node, rect: Rect2i = Rect2i(0, 0, 0, 0)) 🔗

Essaye de parenter cette boîte de dialogue à la dernière fenêtre exclusive relative à from_node, puis appelle popup() dessus. La boîte de dialogue ne doit pas avoir de parent actuel, sinon la méthode échoue.

Voir aussi set_unparent_when_invisible() et Node.get_last_exclusive_window().


void popup_exclusive_centered(from_node: Node, minsize: Vector2i = Vector2i(0, 0)) 🔗

Essaye de parenter cette boîte de dialogue à la dernière fenêtre exclusive relative à from_node, puis appelle popup_centered() dessus. La boîte de dialogue ne doit pas avoir de parent actuel, sinon la méthode échoue.

Voir aussi set_unparent_when_invisible() et Node.get_last_exclusive_window().


void popup_exclusive_centered_clamped(from_node: Node, minsize: Vector2i = Vector2i(0, 0), fallback_ratio: float = 0.75) 🔗

Essaye de parenter cette boîte de dialogue à la dernière fenêtre exclusive relative à from_node, puis appelle popup_centered_clamped() dessus. La boîte de dialogue ne doit pas avoir de parent actuel, sinon la méthode échoue.

Voir aussi set_unparent_when_invisible() et Node.get_last_exclusive_window().


void popup_exclusive_centered_ratio(from_node: Node, ratio: float = 0.8) 🔗

Essaye de parenter cette boîte de dialogue à la dernière fenêtre exclusive relative à from_node, puis appelle popup_centered_ratio() dessus. La boîte de dialogue ne doit pas avoir de parent actuel, sinon la méthode échoue.

Voir aussi set_unparent_when_invisible() et Node.get_last_exclusive_window().


void popup_exclusive_on_parent(from_node: Node, parent_rect: Rect2i) 🔗

Essaye de parenter cette boîte de dialogue à la dernière fenêtre exclusive relative à from_node, puis appelle popup_on_parent() dessus. La boîte de dialogue ne doit pas avoir de parent actuel, sinon la méthode échoue.

Voir aussi set_unparent_when_invisible() et Node.get_last_exclusive_window().


void popup_on_parent(parent_rect: Rect2i) 🔗

Fait apparaître la Window comme une popup avec une position décalée par la positon de la Window parente. Si la Window est intégrée, a le même effet que popup().


void remove_theme_color_override(name: StringName) 🔗

Retire une redéfinition locale pour une Color de thème nommée name ajoutée précédemment par add_theme_color_override() ou via le dock Inspecteur.


void remove_theme_constant_override(name: StringName) 🔗

Supprime une redéfinition locale pour une constante de thème nommée name ajoutée précédemment par add_theme_constant_override() ou via le dock Inspecteur.


void remove_theme_font_override(name: StringName) 🔗

Retire une redéfinition locale pour une Font de thème nommée name ajoutée précédemment par add_theme_font_override() ou via le dock Inspecteur.


void remove_theme_font_size_override(name: StringName) 🔗

Retire une redéfinition locale pour une taille de police de thème nommée name ajoutée précédemment par add_theme_font_size_override() ou via le dock Inspecteur.


void remove_theme_icon_override(name: StringName) 🔗

Retire une redéfinition locale pour une icône de thème nommée name ajoutée précédemment par add_theme_icon_override() ou via le dock Inspecteur.


void remove_theme_stylebox_override(name: StringName) 🔗

Retire une redéfinition locale pour une StyleBox de thème nommée name ajoutée précédemment par add_theme_stylebox_override() ou via le dock Inspecteur.


void request_attention() 🔗

Indique à l'OS que le Window a besoin d'attention. Cela fait que la fenêtre se démarque d'une certaine manière en fonction du système, par exemple, elle peut clignoter dans la barre des tâches.


void reset_size() 🔗

Réinitialise la taille à la taille minimale, qui est le max de min_size et (si wrap_controls est activé) get_contents_minimum_size(). Ceci est équivalent à appeler set_size(Vector2i()) (ou toute taille inférieure au minimum).


void set_flag(flag: Flags, enabled: bool) 🔗

Définit un drapeau de fenêtre spécifié.


void set_ime_active(active: bool) 🔗

Si active vaut true, active l'IME natif du système (Input Method Editor, litt. "Éditeur de la méthode d'entrée").


void set_ime_position(position: Vector2i) 🔗

Déplace l'IME à la position donnée.


void set_layout_direction(direction: LayoutDirection) 🔗

Définit la direction de mise en page et la direction d'écriture de texte. Les mises en page de droite à gauche sont nécessaires pour certaines langues (par exemple, l'arabe et l'hébreu).


void set_taskbar_progress_state(state: ProgressState) 🔗

Sets the type and state of the progress bar on the taskbar/dock icon of the Window. See ProgressState for possible values and how each mode behaves.

Note: This method is implemented only on Windows and macOS.


void set_taskbar_progress_value(value: float) 🔗

Creates a progress bar on the taskbar/dock icon of the Window if it does not exist, sets the progress of the icon.

value acts as a relative percentage value, ranges from 0.0 (lowest) to 1.0 (highest).

Note: This method is implemented only on Windows and macOS.


void set_unparent_when_invisible(unparent: bool) 🔗

Si unparent vaut true, la fenêtre est automatiquement retirée de son parent lorsqu'elle devient invisible.

Note : Assurez-vous de garder une référence au nœud, sinon il sera orphelin. Vous devez également appeler manuellement Node.queue_free() pour libérer la fenêtre si elle n'est pas parentée.


void set_use_font_oversampling(enable: bool) 🔗

Active le sur-échantillonnage de la police. Cela rend les polices plus belles quand elles sont agrandies.


void show() 🔗

Fait apparaître la Window. Cela permet d'interagir avec la Window et ne change aucune de ses propriétés autre que sa visibilité (contrairement à par exemple popup()).


void start_drag() 🔗

Starts an interactive drag operation on the window, using the current mouse position. Call this method when handling a mouse button being pressed to simulate a pressed event on the window's title bar. Using this method allows the window to participate in space switching, tiling, and other system features.


void start_resize(edge: WindowResizeEdge) 🔗

Démarre une opération de redimensionnement interactive sur la fenêtre, en utilisant la position actuelle de la souris. Appelez cette méthode lors de la manipulation d'un bouton de souris appuyé pour simuler un événement d'appui sur le bord de la fenêtre.


Descriptions des propriétés du thème

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

La couleur du texte du titre.


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

La couleur du contour du texte du titre.


int close_h_offset = 18 🔗

Décalage horizontal de position du bouton de fermeture, par rapport à la fin de la barre du titre, vers le début de la barre du titre.


int close_v_offset = 24 🔗

Décalage vertical de position du bouton de fermeture, par rapport au bas de la barre du titre, vers le haut de la barre du titre.


int resize_margin = 4 🔗

Définit la marge extérieure à laquelle la bordure de la fenêtre peut être saisie avec la souris et redimensionnée.


int title_height = 36 🔗

Hauteur de la barre du titre.


int title_outline_size = 0 🔗

La taille du contour du titre.


Font title_font 🔗

La police utilisée pour dessiner le titre.


int title_font_size 🔗

La taille de la police de titre.


Texture2D close 🔗

L'icône personnalisée pour le bouton de fermeture.


Texture2D close_pressed 🔗

L'icône pour le bouton de fermeture lorsqu'il est appuyé.


StyleBox embedded_border 🔗

Le style d'arrière-plan utilisé lorsque la Window est intégrée. Notez que cela n'est affiché que sous le contenu de la fenêtre, à l'exception du titre. Pour des bordures et un style de barre de titre appropriés, vous pouvez utiliser les propriétés expand_margin_* de StyleBoxFlat.

Note : L'arrière-plan du contenu ne sera visible que si transparent est activé.


StyleBox embedded_unfocused_border 🔗

Le style d'arrière-plan utilisé lorsque la Window est intégrée et sans le focus.