Window
Viewport окна с собственным интерфейсом и событиями.
Window представляет главное или дочернее окно. Дочерние окна могут быть встроенными в родительский viewport или нативными; поддержка зависит от backend и настроек проекта. AcceptDialog и ConfirmationDialog наследуют Window.
Для несохранённого документа перехватите CloseRequested и настройте EntityTree.AutoAcceptQuit. Завершайте процесс только после успешного сохранения либо явного отказа от изменений. Сохранённые Position/Size проверяйте против актуальной доступной области экрана; координаты встроенных окон относятся к родительскому viewport.
Объявления сверены с C# SDK 1.0.0. Раскройте имя, чтобы увидеть сигнатуры и описание.
Конструкторы1
WindowКонструктор
public Window();Свойства42
AccessibilityDescriptionСвойство
public string AccessibilityDescription { get; set; }Удобочитаемое описание узла, которое передается вспомогательным приложениям.
AccessibilityNameСвойство
public string AccessibilityName { get; set; }Удобочитаемое имя узла, которое сообщается вспомогательным приложениям.
AlwaysOnTopСвойство
public bool AlwaysOnTop { get; set; }Если true, окно будет поверх всех других окон. Не работает, если включен Window.Transient.
AutoTranslateСвойство · Устарело
public bool AutoTranslate { get; set; }Включает/выключает автоматическую замену текста на переведенную версию в зависимости от текущей локали.
BorderlessСвойство
public bool Borderless { get; set; }Если true, окно не будет иметь границ.
ContentScaleAspectСвойство
public Window.ContentScaleAspectEnum ContentScaleAspect { get; set; }Политика пропорций при масштабировании. Keep сохраняет базовую область с полосами при необходимости; Expand открывает дополнительную логическую область; Ignore допускает неравномерное растяжение. Не расставляет элементы UI автоматически.
ContentScaleFactorСвойство
public float ContentScaleFactor { get; set; }Множитель масштаба всего содержимого, а не только шрифта. В проверенном CanvasItems увеличение 1 → 2 уменьшает логическую видимую область вдвое по каждой оси. В режиме Viewport также влияет на внутренний размер отрисовки; проверяйте компоновку и качество отдельно.
ContentScaleModeСвойство
public Window.ContentScaleModeEnum ContentScaleMode { get; set; }Режим масштабирования содержимого окна. CanvasItems масштабирует логическое 2D и рисует в подогнанном размере окна; Viewport рисует в базовом разрешении и затем масштабирует изображение. Не тождественен отдельному масштабу 3D.
ContentScaleSizeСвойство
public Vector2I ContentScaleSize { get; set; }Базовый размер дизайна для масштабирования окна. Не переключает разрешение монитора и не равен обязательно Size окна или размеру render target. Итоговая логическая область зависит от режима, политики пропорций и ContentScaleFactor.
ContentScaleStretchСвойство
public Window.ContentScaleStretchEnum ContentScaleStretch { get; set; }Политика, используемая для определения окончательного масштабного коэффициента для 2D-элементов. Это влияет на то, как применяется Window.ContentScaleFactor, в дополнение к автоматическому масштабному коэффициенту, определяемому Window.ContentScaleSize.
CurrentScreenСвойство
public int CurrentScreen { get; set; }Экран, на котором в данный момент находится окно.
ExcludeFromCaptureСвойство
public bool ExcludeFromCapture { get; set; }Если true, Window исключается из снимков экрана, сделанных с помощью DisplayServer.ScreenGetImage, DisplayServer.ScreenGetImageRect и DisplayServer.ScreenGetPixel.
Примечание: Это свойство реализовано в macOS и Windows.
Примечание: Включение этого параметра предотвратит захват изображения окна стандартными методами создания снимков экрана, но НЕ гарантирует, что другие приложения не смогут сделать снимок. Это не следует использовать в качестве DRM или меры безопасности.
ExclusiveСвойство
public bool Exclusive { get; set; }Если true, Window будет в монопольном режиме. Монопольный режим всегда находится поверх родительского окна и блокирует весь ввод, идущий в родительское Window.
Для работы необходимо включить Window.Transient.
ExtendToTitleСвойство
public bool ExtendToTitle { get; set; }Если true, содержимое Window расширяется до полного размера окна, строка заголовка окна становится прозрачной.
Примечание: Это свойство реализовано только в macOS.
** Примечание:** Это свойство работает только в Windows.
ForceNativeСвойство
public bool ForceNative { get; set; }Если true, будет использоваться собственное окно независимо от родительского окна просмотра и настроек проекта.
FullscreenShortcutEnabledСвойство
public bool FullscreenShortcutEnabled { get; set; }Если true, позволяет пользователю переключать режим полного экрана, нажав на короткий путь, определенный в ProjectSettings.input/ui_toggle_fullscreen ([kbd]Alt + Enter[/kbd] по умолчанию. Это вводится на главном окне в соответствии с ProjectSettings.display/window/size/enable_toggle_fullscreen_shortcut разработка проекта.
HdrOutputRequestedСвойство
public bool HdrOutputRequested { get; set; }Если true, запрашивает вывод HDR для Window, с откатом к SDR, если не поддерживается, и автоматически переключается между HDR и SDR при перемещении окна между экранами, изменении возможностей экрана или изменении системных настроек. Это внутренне принудительно включает Viewport.UseHdr2D на основном Viewport. Все остальные SubViewport этого Window должны иметь включённое свойство Viewport.UseHdr2D для вывода HDR.
InitialPositionСвойство
public Window.WindowInitialPosition InitialPosition { get; set; }Указывает начальный тип положения для Window.
KeepTitleVisibleСвойство
public bool KeepTitleVisible { get; set; }Если true, ширина Window увеличивается, чтобы текст заголовка был полностью виден.
MaxSizeСвойство
public Vector2I MaxSize { get; set; }Если не равно нулю, Window не может быть изменено, чтобы стать больше этого размера.
Примечание: Это свойство будет игнорироваться, если значение меньше, чем Window.MinSize.
MaximizeDisabledСвойство
public bool MaximizeDisabled { get; set; }Если true, Window"Максимальная кнопка отключена".
Примечание: Если и минимизировать, и максимально увеличить кнопки отключены, кнопки полностью скрыты, и видима только кнопка закрытия.
Примечание: Это свойство реализуется на Linux (X11), acOS и Windows.
MinSizeСвойство
public Vector2I MinSize { get; set; }Если не равно нулю, Window нельзя изменить, чтобы он стал меньше этого размера.
Примечание: Это свойство будет игнорироваться в пользу Window.GetContentsMinimumSize, если Window.WrapControls включен и его размер больше.
MinimizeDisabledСвойство
public bool MinimizeDisabled { get; set; }Если true, WindowКнопка минимизация отключена.
Примечание: Если и минимизировать, и максимально увеличить кнопки отключены, кнопки полностью скрыты, и видима только кнопка закрытия.
Примечание: Это свойство реализуется на Linux (X11), acOS и Windows.
ModeСвойство
public Window.ModeEnum Mode { get; set; }Устанавливает текущий режим окна.
Примечание: Полноэкранный режим не является исключительным полноэкранным режимом в Windows и Linux.
Примечание: Этот метод работает только с собственными окнами, т. е. главным окном и производными от Window узлами, когда Viewport.GuiEmbedSubwindows отключен в главном окне просмотра.
MousePassthroughСвойство
public bool MousePassthrough { get; set; }Если true, все события, связанные с мышью, будут передаваться в основное окно того же приложения. Смотрите также Window.MousePassthroughPolygon.
Примечание: Это свойство реализовано в Linux (X11), macOS и Windows.
** Примечание:** Это свойство работает только в операционной системе Windows.
MousePassthroughPolygonСвойство
public Vector2[] MousePassthroughPolygon { get; set; }Устанавливает многоугольную область окна, которая принимает события мыши. События мыши за пределами области будут переданы. Передача пустого массива отключит поддержку сквозной передачи (все события мыши будут перехвачены окном, что является поведением по умолчанию).
// Set region, using Path2D node.
GetEntity<Window>("Window").MousePassthroughPolygon = GetEntity<Path2D>("Path2D").Curve.GetBakedPoints();
// Set region, using Polygon2D node.
GetEntity<Window>("Window").MousePassthroughPolygon = GetEntity<Polygon2D>("Polygon2D").Polygon;
// Reset region to default.
GetEntity<Window>("Window").MousePassthroughPolygon = [];Примечание: Это свойство игнорируется, если Window.MousePassthrough установлен в true.
Примечание: В Windows часть окна, которая находится за пределами области, не отрисовывается, тогда как в Linux (X11) и macOS — отрисовывается.
Примечание: Это свойство реализовано в Linux (X11), macOS и Windows.
NonclientAreaСвойство
public Rect2I NonclientArea { get; set; }Если задано, определяет область пользовательского оформления окна, которая будет получать ввод с мыши, даже если обычный ввод в окно заблокирован (например, когда у него открыт дочерний элемент, не имеющий отношения к основному окну). См. также Window.NonclientWindowInput.
PopupWMHintСвойство
public bool PopupWMHint { get; set; }Если true, Window будет сигнализировать оконному менеджеру, что оно должно быть «всплывающим» окном, определяемым реализацией (обычно плавающим, безрамочным, неразворачиваемым и неподвижным дочерним окном).
PopupWindowСвойство
public bool PopupWindow { get; set; }Если true, Window будет считаться всплывающим. Всплывающие окна — это подокна, которые не отображаются как отдельные окна в списке окон системного менеджера окон и будут отправлять запрос на закрытие при щелчке по чему-либо за их пределами (если не включено Window.Exclusive).
PositionСвойство
public Vector2I Position { get; set; }Положение окна в координатах его режима. Встроенное окно использует родительский viewport; нативное — экран. Восстановленные координаты проверяйте по текущей доступной области, включая отрицательные координаты мониторов.
SharpCornersСвойство
public bool SharpCorners { get; set; }Если true, Window переключит OS стиль окна для отображения острых углов.
Примечание: Это устройство используется только на Windows (11).
Примечание: Это свойство работает только с местными окнами.
SizeСвойство
public Vector2I Size { get; set; }Размер окна в пикселях. См. также Window.ContentScaleSize, который не задает физический размер окна, но влияет на то, как работает масштабирование относительно текущего Window.ContentScaleMode.
Тема
ThemeСвойство
public Theme Theme { get; set; }Ресурс Theme, который использует этот узел и все его дочерние элементы Control и Window. Если дочерний узел имеет свой собственный набор ресурсов Theme, элементы темы объединяются с определениями дочернего элемента, имеющими более высокий приоритет.
Примечание: Стили Window не будут иметь никакого эффекта, если окно не встроено.
ThemeTypeVariationСвойство
public StringName ThemeTypeVariation { get; set; }Имя вариации типа темы, используемой этим Window для поиска собственных элементов темы. См. Control.ThemeTypeVariation для получения более подробной информации.
TitleСвойство
TransientСвойство
public bool Transient { get; set; }Если true, Window является переходным, т. е. оно считается дочерним элементом другого Window. Переходное окно будет уничтожено вместе со своим переходным родителем и вернет фокус родителю при закрытии. Переходное окно отображается поверх неисключительного полноэкранного родительского окна. Переходные окна не могут переходить в полноэкранный режим.
Обратите внимание, что поведение может отличаться в зависимости от платформы.
TransientToFocusedСвойство
public bool TransientToFocused { get; set; }Если true, а Window — Window.Transient, это окно (в момент, когда становится видимым) станет переходным к текущему окну, находящемуся в фокусе, а не к непосредственному родительскому окну в иерархии. Обратите внимание, что переходный родитель назначается в момент, когда это окно становится видимым, поэтому его последующее изменение не оказывает никакого эффекта, пока не будет показано снова.
TransparentСвойство
public bool Transparent { get; set; }Если true, фон Window может быть прозрачным. Лучше всего использовать это со встроенными окнами.
Примечание: Поддержка прозрачности реализована в Linux, macOS и Windows, но доступность может зависеть от драйвера графического процессора, диспетчера отображения и возможностей композитора.
Примечание: Это свойство не имеет эффекта, если ProjectSettings.display/window/per_pixel_transparency/allowed установлено в false.
UnfocusableСвойство
public bool Unfocusable { get; set; }Если true, Window не может быть сфокусирован и с ним нельзя взаимодействовать. Он все еще может быть видимым.
UnresizableСвойство
public bool Unresizable { get; set; }Если true, размер окна изменить нельзя.
VisibleСвойство
public bool Visible { get; set; }Если true, окно видимо.
WrapControlsСвойство
public bool WrapControls { get; set; }Если true, размер окна будет автоматически обновляться при добавлении или удалении дочернего узла, игнорируя Window.MinSize, если новый размер больше.
Если false, то вам необходимо вручную вызвать Window.ChildControlsChanged.
Методы142
AddThemeColorOverridevoid
public void AddThemeColorOverride(StringName name, Color color);Создает локальное переопределение для темы Color с указанным name. Локальные переопределения всегда имеют приоритет при извлечении элементов темы для элемента управления. Переопределение можно удалить с помощью Window.RemoveThemeColorOverride.
См. также Window.GetThemeColor и Control.AddThemeColorOverride для получения дополнительных сведений.
| Имя | Тип | По умолчанию |
|---|---|---|
name | StringName | — |
color | Color | — |
AddThemeConstantOverridevoid
public void AddThemeConstantOverride(StringName name, int constant);Создает локальное переопределение для константы темы с указанным name. Локальные переопределения всегда имеют приоритет при извлечении элементов темы для элемента управления. Переопределение можно удалить с помощью Window.RemoveThemeConstantOverride.
См. также Window.GetThemeConstant.
| Имя | Тип | По умолчанию |
|---|---|---|
name | StringName | — |
constant | int | — |
AddThemeFontOverridevoid
public void AddThemeFontOverride(StringName name, Font font);Создает локальное переопределение для темы Font с указанным name. Локальные переопределения всегда имеют приоритет при извлечении элементов темы для элемента управления. Переопределение можно удалить с помощью Window.RemoveThemeFontOverride.
См. также Window.GetThemeFont.
| Имя | Тип | По умолчанию |
|---|---|---|
name | StringName | — |
font | Font | — |
AddThemeFontSizeOverridevoid
public void AddThemeFontSizeOverride(StringName name, int fontSize);Создает локальное переопределение для размера шрифта темы с указанным name. Локальные переопределения всегда имеют приоритет при извлечении элементов темы для элемента управления. Переопределение можно удалить с помощью Window.RemoveThemeFontSizeOverride.
См. также Window.GetThemeFontSize.
| Имя | Тип | По умолчанию |
|---|---|---|
name | StringName | — |
fontSize | int | — |
AddThemeIconOverridevoid
public void AddThemeIconOverride(StringName name, Texture2D texture);Создает локальное переопределение для значка темы с указанным name. Локальные переопределения всегда имеют приоритет при извлечении элементов темы для элемента управления. Переопределение можно удалить с помощью Window.RemoveThemeIconOverride.
См. также Window.GetThemeIcon.
| Имя | Тип | По умолчанию |
|---|---|---|
name | StringName | — |
texture | Texture2D | — |
AddThemeSoundOverridevoid
public void AddThemeSoundOverride(StringName name, AudioStream sound);Создать локальное переключение для темы звука с указанным name. Местные перестановки всегда имеют преимущественную силу при загрузке тематических элементов для контроля. Window.RemoveThemeSoundOverride.
См. также Window.GetThemeSound.
| Имя | Тип | По умолчанию |
|---|---|---|
name | StringName | — |
sound | AudioStream | — |
AddThemeStyleboxOverridevoid
public void AddThemeStyleboxOverride(StringName name, StyleBox stylebox);Создает локальное переопределение для темы StyleBox с указанным name. Локальные переопределения всегда имеют приоритет при извлечении элементов темы для элемента управления. Переопределение можно удалить с помощью Window.RemoveThemeStyleboxOverride.
См. также Window.GetThemeStylebox и Control.AddThemeStyleboxOverride для получения дополнительных сведений.
| Имя | Тип | По умолчанию |
|---|---|---|
name | StringName | — |
stylebox | StyleBox | — |
BeginBulkThemeOverridevoid
public void BeginBulkThemeOverride();Запрещает методам *_theme_*_override выдавать Window.NotificationThemeChanged до тех пор, пока не будет вызван Window.EndBulkThemeOverride.
CanDrawbool
public bool CanDraw();Возвращает, отображается ли окно на экране.
boolChildControlsChangedvoid
public void ChildControlsChanged();Запрашивает обновление размера Window для соответствия базовым узлам Control.
EndBulkThemeOverridevoid
public void EndBulkThemeOverride();Завершает массовое обновление переопределения темы. См. Window.BeginBulkThemeOverride.
GetAccessibilityDescriptionstring
public string GetAccessibilityDescription();stringGetAccessibilityNamestring
public string GetAccessibilityName();stringGetContentScaleAspectWindow.ContentScaleAspectEnum
public Window.ContentScaleAspectEnum GetContentScaleAspect();Возвращает запрошенное значение ContentScaleAspect. Политика пропорций при масштабировании. Keep сохраняет базовую область с полосами при необходимости; Expand открывает дополнительную логическую область; Ignore допускает неравномерное растяжение. Не расставляет элементы UI автоматически.
Window.ContentScaleAspectEnumЗначение свойства ContentScaleAspect; учитывайте описанное различие между настройкой и фактическим результатом.
GetContentScaleFactorfloat
public float GetContentScaleFactor();Возвращает запрошенное значение ContentScaleFactor. Множитель масштаба всего содержимого, а не только шрифта. В проверенном CanvasItems увеличение 1 → 2 уменьшает логическую видимую область вдвое по каждой оси. В режиме Viewport также влияет на внутренний размер отрисовки; проверяйте компоновку и качество отдельно.
floatЗначение свойства ContentScaleFactor; учитывайте описанное различие между настройкой и фактическим результатом.
GetContentScaleModeWindow.ContentScaleModeEnum
public Window.ContentScaleModeEnum GetContentScaleMode();Возвращает запрошенное значение ContentScaleMode. Режим масштабирования содержимого окна. CanvasItems масштабирует логическое 2D и рисует в подогнанном размере окна; Viewport рисует в базовом разрешении и затем масштабирует изображение. Не тождественен отдельному масштабу 3D.
Window.ContentScaleModeEnumЗначение свойства ContentScaleMode; учитывайте описанное различие между настройкой и фактическим результатом.
GetContentScaleSizeVector2I
public Vector2I GetContentScaleSize();Возвращает запрошенное значение ContentScaleSize. Базовый размер дизайна для масштабирования окна. Не переключает разрешение монитора и не равен обязательно Size окна или размеру render target. Итоговая логическая область зависит от режима, политики пропорций и ContentScaleFactor.
Vector2IЗначение свойства ContentScaleSize; учитывайте описанное различие между настройкой и фактическим результатом.
GetContentScaleStretchWindow.ContentScaleStretchEnum
public Window.ContentScaleStretchEnum GetContentScaleStretch();Window.ContentScaleStretchEnumGetContentsMinimumSizeVector2
public Vector2 GetContentsMinimumSize();Виртуальный метод, реализуемый пользователем. Переопределяет значение, возвращаемое Window.GetContentsMinimumSize.
Vector2GetCurrentScreenint
public int GetCurrentScreen();intGetFlagbool
public bool GetFlag(Window.Flags flag);Возвращает true, если установлен flag.
| Имя | Тип | По умолчанию |
|---|---|---|
flag | Window.Flags | — |
boolGetFocusedWindowWindow
public static Window GetFocusedWindow();Возвращает фокусированное окно.
WindowGetForceNativebool
public bool GetForceNative();boolGetInitialPositionWindow.WindowInitialPosition
public Window.WindowInitialPosition GetInitialPosition();Window.WindowInitialPositionGetKeepTitleVisiblebool
public bool GetKeepTitleVisible();boolGetLayoutDirectionWindow.LayoutDirection
public Window.LayoutDirection GetLayoutDirection();Возвращает направление макета и направление написания текста.
Window.LayoutDirectionGetMaxSizeVector2I
public Vector2I GetMaxSize();Vector2IGetMinSizeVector2I
public Vector2I GetMinSize();Vector2IGetModeWindow.ModeEnum
public Window.ModeEnum GetMode();Window.ModeEnumGetMousePassthroughPolygonVector2[]
public Vector2[] GetMousePassthroughPolygon();Vector2[]GetNonclientAreaRect2I
public Rect2I GetNonclientArea();Rect2IGetOutputMaxLinearValuefloat
public float GetOutputMaxLinearValue();Возвращает максимальное значение для линейных компонентов цвета, которое может быть отображено в этом окне, независимо от вывода SDR или HDR. Возвращает 1.0, если HDR не включен или не поддерживается. Сигнал Window.OutputMaxLinearValueChanged испускается при каждом изменении этого значения.
Это значение используется тональной компрессией и другими эффектами Environment для обеспечения того, чтобы яркие цвета отображались в диапазоне, доступном для этого окна. При использовании этого максимального линейного значения в вашем проекте оно должно использоваться только для вывода цветов непосредственно на экран без тональной компрессии и без влияния на освещение, эффекты постобработки или окружающие цвета. Ниже приведён пример, который создаёт самый яркий фиолетовый цвет, который может отобразить экран:
Примечание: Вам необходимо преобразовать sRGB-цвета в линейные перед умножением на это значение для получения корректных результатов.
floatGetPositionVector2I
public Vector2I GetPosition();Vector2IGetPositionWithDecorationsVector2I
public Vector2I GetPositionWithDecorations();Возвращает позицию окна, включая его границу.
Примечание: Если Window.Visible равно false, этот метод возвращает то же значение, что и Window.Position.
Vector2IGetSizeVector2I
public Vector2I GetSize();Vector2IGetSizeWithDecorationsVector2I
public Vector2I GetSizeWithDecorations();Возвращает размер окна, включая его границу.
Примечание: Если Window.Visible равно false, этот метод возвращает то же значение, что и Window.Size.
Vector2IGetThemeTheme
public Theme GetTheme();ThemeGetThemeColorColor
public Color GetThemeColor(StringName name, StringName themeType = null);Возвращается a Color от первого совпадения Theme на дереве, если это Theme имеет цветный элемент с указанным name и theme_type.
Смотрите. Control.GetThemeColor Для подробностей.
| Имя | Тип | По умолчанию |
|---|---|---|
name | StringName | — |
themeType | StringName | null |
ColorGetThemeConstantint
public int GetThemeConstant(StringName name, StringName themeType = null);Возвращает константу из первого совпадения Theme на дереве, если это Theme имеет постоянный элемент с указанным name и theme_type.
Смотрите. Control.GetThemeColor Для подробностей.
| Имя | Тип | По умолчанию |
|---|---|---|
name | StringName | — |
themeType | StringName | null |
intGetThemeDefaultBaseScalefloat
public float GetThemeDefaultBaseScale();Возвращает базовое значение масштаба по умолчанию из первой соответствующей Theme в дереве, если эта Theme имеет допустимое значение Theme.DefaultBaseScale.
Подробнее см. в Control.GetThemeColor.
floatGetThemeDefaultFontFont
public Font GetThemeDefaultFont();Возвращает шрифт по умолчанию из первого совпадения Theme на дереве, если это Theme действительный Theme.DefaultFont Стоимость.
Смотрите. Control.GetThemeColor Для подробностей.
FontGetThemeDefaultFontSizeint
public int GetThemeDefaultFontSize();Возвращает значение по умолчанию для Размер шрифта из первого подходящего Theme в дереве, если Theme имеет допустимое значение Theme.DefaultFontSize.
Подробности смотрите в Control.GetThemeColor.
intGetThemeFontFont
public Font GetThemeFont(StringName name, StringName themeType = null);Возвращает Font из первого подходящего Theme в дереве, если в Theme есть элемент font с указанными name и theme_type.
Подробности смотрите в Control.GetThemeColor.
| Имя | Тип | По умолчанию |
|---|---|---|
name | StringName | — |
themeType | StringName | null |
FontGetThemeFontSizeint
public int GetThemeFontSize(StringName name, StringName themeType = null);Возвращает Размер шрифта из первого подходящего Theme в дереве, если в Theme есть элемент Размер шрифта с указанными name и theme_type.
Подробности смотрите в Control.GetThemeColor.
| Имя | Тип | По умолчанию |
|---|---|---|
name | StringName | — |
themeType | StringName | null |
intGetThemeIconTexture2D
public Texture2D GetThemeIcon(StringName name, StringName themeType = null);Возвращает icon из первого подходящего Theme в дереве, если в Theme есть элемент icon с указанными name и theme_type.
Подробности смотрите в Control.GetThemeColor.
| Имя | Тип | По умолчанию |
|---|---|---|
name | StringName | — |
themeType | StringName | null |
Texture2DGetThemeSoundAudioStream
public AudioStream GetThemeSound(StringName name, StringName themeType = null);Возвращает звук из первого совпадения Theme на дереве, если это Theme имеет звуковой элемент с указанным name и theme_type.
Смотрите. Control.GetThemeColor Для подробностей.
| Имя | Тип | По умолчанию |
|---|---|---|
name | StringName | — |
themeType | StringName | null |
AudioStreamGetThemeStyleboxStyleBox
public StyleBox GetThemeStylebox(StringName name, StringName themeType = null);Возвращает StyleBox из первого подходящего Theme в дереве, если в Theme есть элемент stylebox с указанными name и theme_type.
Подробности смотрите в Control.GetThemeColor.
| Имя | Тип | По умолчанию |
|---|---|---|
name | StringName | — |
themeType | StringName | null |
StyleBoxGetThemeTypeVariationStringName
public StringName GetThemeTypeVariation();StringNameGetTitlestring
public string GetTitle();stringGetWindowIdint
public int GetWindowId();Возвращает ID окна.
intGrabFocusvoid
public void GrabFocus();Заставляет окно захватывать фокус, позволяя ему получать пользовательский ввод.
HasFocusbool
public bool HasFocus();Возвращает true, если окно находится в фокусе.
boolHasThemeColorbool
public bool HasThemeColor(StringName name, StringName themeType = null);Возвращает true, если в дереве есть соответствующий Theme, в котором есть элемент color с указанными name и theme_type.
Подробности смотрите в Control.GetThemeColor.
| Имя | Тип | По умолчанию |
|---|---|---|
name | StringName | — |
themeType | StringName | null |
boolHasThemeColorOverridebool
public bool HasThemeColorOverride(StringName name);Возвращает true, если есть локальное переопределение для темы Color с указанным name в этом узле Control.
См. Window.AddThemeColorOverride.
| Имя | Тип | По умолчанию |
|---|---|---|
name | StringName | — |
boolHasThemeConstantbool
public bool HasThemeConstant(StringName name, StringName themeType = null);Возвращает true, если в дереве есть соответствующий Theme, в котором есть элемент constant с указанными name и theme_type.
Подробности смотрите в Control.GetThemeColor.
| Имя | Тип | По умолчанию |
|---|---|---|
name | StringName | — |
themeType | StringName | null |
boolHasThemeConstantOverridebool
public bool HasThemeConstantOverride(StringName name);Возвращает true, если есть локальное переопределение для константы темы с указанным name в этом узле Control.
См. Window.AddThemeConstantOverride.
| Имя | Тип | По умолчанию |
|---|---|---|
name | StringName | — |
boolHasThemeFontbool
public bool HasThemeFont(StringName name, StringName themeType = null);Returns (Возврат) true если есть совпадение Theme на дереве, в котором имеется шрифт с указанным name и theme_type.
Смотрите. Control.GetThemeFont Для подробностей.
| Имя | Тип | По умолчанию |
|---|---|---|
name | StringName | — |
themeType | StringName | null |
boolHasThemeFontOverridebool
public bool HasThemeFontOverride(StringName name);Возвращает true, если есть локальное переопределение для темы Font с указанным name в этом узле Control.
См. Window.AddThemeFontOverride.
| Имя | Тип | По умолчанию |
|---|---|---|
name | StringName | — |
boolHasThemeFontSizebool
public bool HasThemeFontSize(StringName name, StringName themeType = null);Returns (Возврат) true если есть совпадение Theme на дереве, которое имеет размер шрифта с указанным name и theme_type.
Смотрите. Control.GetThemeFontSize Для подробностей.
| Имя | Тип | По умолчанию |
|---|---|---|
name | StringName | — |
themeType | StringName | null |
boolHasThemeFontSizeOverridebool
public bool HasThemeFontSizeOverride(StringName name);Возвращает true, если есть локальное переопределение для размера шрифта темы с указанным name в этом узле Control.
См. Window.AddThemeFontSizeOverride.
| Имя | Тип | По умолчанию |
|---|---|---|
name | StringName | — |
boolHasThemeIconbool
public bool HasThemeIcon(StringName name, StringName themeType = null);Returns (Возврат) true если есть совпадение Theme на дереве, у которого есть значок с указанным name и theme_type.
Смотрите. Control.GetThemeIcon Для подробностей.
| Имя | Тип | По умолчанию |
|---|---|---|
name | StringName | — |
themeType | StringName | null |
boolHasThemeIconOverridebool
public bool HasThemeIconOverride(StringName name);Возвращает true, если есть локальное переопределение для значка темы с указанным name в этом узле Control.
См. Window.AddThemeIconOverride.
| Имя | Тип | По умолчанию |
|---|---|---|
name | StringName | — |
boolHasThemeSoundbool
public bool HasThemeSound(StringName name, StringName themeType = null);Returns (Возврат) true если есть совпадение Theme на дереве, у которого есть звук с указанным name и theme_type.
Смотрите. Control.GetThemeSound Для подробностей.
| Имя | Тип | По умолчанию |
|---|---|---|
name | StringName | — |
themeType | StringName | null |
boolHasThemeSoundOverridebool
public bool HasThemeSoundOverride(StringName name);Returns (Возврат) true если существует локальное переключение для темы звука с указанным name в этом Control Узел.
Смотрите. Window.AddThemeSoundOverride.
| Имя | Тип | По умолчанию |
|---|---|---|
name | StringName | — |
boolHasThemeStyleboxbool
public bool HasThemeStylebox(StringName name, StringName themeType = null);Returns (Возврат) true если есть совпадение Theme на дереве, в котором имеется элемент стиля с указанным name и theme_type.
Смотрите. Control.GetThemeStylebox Для подробностей.
| Имя | Тип | По умолчанию |
|---|---|---|
name | StringName | — |
themeType | StringName | null |
boolHasThemeStyleboxOverridebool
public bool HasThemeStyleboxOverride(StringName name);Возвращает true, если есть локальное переопределение для темы StyleBox с указанным name в этом узле Control.
См. Window.AddThemeStyleboxOverride.
Спрячься.
| Имя | Тип | По умолчанию |
|---|---|---|
name | StringName | — |
boolHidevoid
public void Hide();Скрывает окно. Это не то же самое, что свернутое состояние. Со скрытым окном нельзя взаимодействовать, и его нужно сделать видимым с помощью Window.Show.
IsAutoTranslatingbool
public bool IsAutoTranslating();boolIsEmbeddedbool
public bool IsEmbedded();Возвращает true, если окно в данный момент встроено в другое окно.
boolIsExclusivebool
public bool IsExclusive();boolIsFullscreenShortcutEnabledbool
public bool IsFullscreenShortcutEnabled();boolIsHdrOutputRequestedbool
public bool IsHdrOutputRequested();boolIsLayoutRtlbool
public bool IsLayoutRtl();Возвращает true, если макет расположения справа налево.
boolIsMaximizeAllowedbool
public bool IsMaximizeAllowed();Возвращает true, если окно можно развернуть (кнопка развернуть включена).
boolIsTransientbool
public bool IsTransient();boolIsTransientToFocusedbool
public bool IsTransientToFocused();boolIsUsingFontOversamplingbool
public bool IsUsingFontOversampling();Возвращает true, если включена передискретизация шрифта. См. Window.SetUseFontOversampling.
boolIsVisiblebool
public bool IsVisible();boolIsWrappingControlsbool
public bool IsWrappingControls();boolMoveToCentervoid
public void MoveToCenter();Центрирует окно на текущем экране. Если окно встроено, оно центрируется в области просмотра Viewport.
MoveToForegroundvoid · Устарело
public void MoveToForeground();Заставляет окно захватывать фокус, позволяя ему получать пользовательский ввод.
Popupvoid
public void Popup(Rect2I? rect = default);Показывает Window и делает его переходным (см. Window.Transient). Если указан rect, он будет установлен как размер Window. Не удается, если вызывается в главном окне.
Если ProjectSettings.display/window/subwindows/embed_subwindows равен true (режим одного окна), координаты rect являются глобальными и относятся к верхнему левому углу главного окна (исключая оформление окна). Если координаты позиции rect отрицательные, окно будет расположено за пределами главного окна и в результате может быть невидимым.
Если ProjectSettings.display/window/subwindows/embed_subwindows равен false (режим нескольких окон), координаты rect являются глобальными и относятся к верхнему левому углу самого левого экрана. Если координаты позиции rect отрицательные, окно будет размещено в верхнем левом углу экрана.
Примечание: rect должен быть в глобальных координатах, если указан.
| Имя | Тип | По умолчанию |
|---|---|---|
rect | Rect2I? | default |
rectЕсли параметр не имеет значения, то значение по умолчанию: new Rect2I(new Vector2I(0, 0), new Vector2I(0, 0)).
PopupCenteredvoid
public void PopupCentered(Vector2I? minsize = default);Всплывает Window в центре текущего экрана с опционально заданным минимальным размером. Если Window встроено, оно будет центрировано в родительском Viewport.
Примечание: Вызов его со значением по умолчанию minsize эквивалентен вызову его с Window.Size.
| Имя | Тип | По умолчанию |
|---|---|---|
minsize | Vector2I? | default |
minsizeЕсли параметр не имеет значения, то значение по умолчанию: new Vector2I(0, 0).
PopupCenteredClampedvoid
public void PopupCenteredClamped(Vector2I? minsize = default, float fallbackRatio = 0.75f);Всплывает Window, центрированное внутри его родительского Window. fallback_ratio определяет максимальный размер Window по отношению к его родительскому элементу.
Примечание: Вызов его со значением по умолчанию minsize эквивалентен вызову его с Window.Size.
| Имя | Тип | По умолчанию |
|---|---|---|
minsize | Vector2I? | default |
fallbackRatio | float | 0.75f |
minsizeЕсли параметр не имеет значения, то значение по умолчанию: new Vector2I(0, 0).
PopupCenteredRatiovoid
public void PopupCenteredRatio(float ratio = 0.8f);Если Window встроено, всплывает Window по центру внутри своего встраиваемого устройства и устанавливает его размер как ratio размера встраиваемого устройства.
Если Window является собственным окном, всплывает Window по центру внутри экрана его родительского Window и устанавливает его размер как ratio размера экрана.
| Имя | Тип | По умолчанию |
|---|---|---|
ratio | float | 0.8f |
PopupExclusivevoid
public void PopupExclusive(Entity fromNode, Rect2I? rect = default);Пытается сделать этот диалог родительским для последнего эксклюзивного окна относительно from_node, а затем вызывает Window.Popup для него. Диалог не должен иметь текущего родителя, в противном случае метод не выполняется.
См. также Window.SetUnparentWhenInvisible и Entity.GetLastExclusiveWindow.
| Имя | Тип | По умолчанию |
|---|---|---|
fromNode | Entity | — |
rect | Rect2I? | default |
rectЕсли параметр не имеет значения, то значение по умолчанию: new Rect2I(new Vector2I(0, 0), new Vector2I(0, 0)).
PopupExclusiveCenteredvoid
public void PopupExclusiveCentered(Entity fromNode, Vector2I? minsize = default);Пытается сделать этот диалог родительским для последнего эксклюзивного окна относительно from_node, а затем вызывает Window.PopupCentered для него. Диалог не должен иметь текущего родителя, в противном случае метод не выполняется.
См. также Window.SetUnparentWhenInvisible и Entity.GetLastExclusiveWindow.
| Имя | Тип | По умолчанию |
|---|---|---|
fromNode | Entity | — |
minsize | Vector2I? | default |
minsizeЕсли параметр не имеет значения, то значение по умолчанию: new Vector2I(0, 0).
PopupExclusiveCenteredClampedvoid
public void PopupExclusiveCenteredClamped(Entity fromNode, Vector2I? minsize = default, float fallbackRatio = 0.75f);Пытается сделать этот диалог родительским для последнего эксклюзивного окна относительно from_node, а затем вызывает Window.PopupCenteredClamped для него. Диалог не должен иметь текущего родителя, в противном случае метод не выполняется.
См. также Window.SetUnparentWhenInvisible и Entity.GetLastExclusiveWindow.
| Имя | Тип | По умолчанию |
|---|---|---|
fromNode | Entity | — |
minsize | Vector2I? | default |
fallbackRatio | float | 0.75f |
minsizeЕсли параметр не имеет значения, то значение по умолчанию: new Vector2I(0, 0).
PopupExclusiveCenteredRatiovoid
public void PopupExclusiveCenteredRatio(Entity fromNode, float ratio = 0.8f);Пытается сделать этот диалог родительским для последнего эксклюзивного окна относительно from_node, а затем вызывает Window.PopupCenteredRatio для него. Диалог не должен иметь текущего родителя, в противном случае метод не выполняется.
См. также Window.SetUnparentWhenInvisible и Entity.GetLastExclusiveWindow.
| Имя | Тип | По умолчанию |
|---|---|---|
fromNode | Entity | — |
ratio | float | 0.8f |
PopupExclusiveOnParentvoid
public void PopupExclusiveOnParent(Entity fromNode, Rect2I parentRect);Пытается сделать этот диалог родительским для последнего эксклюзивного окна относительно from_node, а затем вызывает Window.PopupOnParent для него. Диалог не должен иметь текущего родителя, в противном случае метод не выполняется.
См. также Window.SetUnparentWhenInvisible и Entity.GetLastExclusiveWindow.
| Имя | Тип | По умолчанию |
|---|---|---|
fromNode | Entity | — |
parentRect | Rect2I | — |
PopupOnParentvoid
public void PopupOnParent(Rect2I parentRect);Всплывает Window с позицией, смещенной на позицию родительского Window. Если Window встроено, имеет тот же эффект, что и Window.Popup.
| Имя | Тип | По умолчанию |
|---|---|---|
parentRect | Rect2I | — |
RemoveThemeColorOverridevoid
public void RemoveThemeColorOverride(StringName name);Удаляет локальное переопределение для темы Color с указанным name, ранее добавленное с помощью Window.AddThemeColorOverride или через панель инспектора.
| Имя | Тип | По умолчанию |
|---|---|---|
name | StringName | — |
RemoveThemeConstantOverridevoid
public void RemoveThemeConstantOverride(StringName name);Удаляет локальное переопределение для константы темы с указанным name, ранее добавленное Window.AddThemeConstantOverride или через панель инспектора.
| Имя | Тип | По умолчанию |
|---|---|---|
name | StringName | — |
RemoveThemeFontOverridevoid
public void RemoveThemeFontOverride(StringName name);Удаляет локальное переопределение для темы Font с указанным name, ранее добавленное Window.AddThemeFontOverride или через панель инспектора.
| Имя | Тип | По умолчанию |
|---|---|---|
name | StringName | — |
RemoveThemeFontSizeOverridevoid
public void RemoveThemeFontSizeOverride(StringName name);Удаляет локальное переопределение размера шрифта темы с указанным name, ранее добавленное Window.AddThemeFontSizeOverride или через панель инспектора.
| Имя | Тип | По умолчанию |
|---|---|---|
name | StringName | — |
RemoveThemeIconOverridevoid
public void RemoveThemeIconOverride(StringName name);Удаляет локальное переопределение для значка темы с указанным name, ранее добавленное Window.AddThemeIconOverride или через панель инспектора.
| Имя | Тип | По умолчанию |
|---|---|---|
name | StringName | — |
RemoveThemeSoundOverridevoid
public void RemoveThemeSoundOverride(StringName name);Удалить локальное переключение для тематического звука с указанным name Ранее добавленная Window.AddThemeSoundOverride или через док Инспектора.
| Имя | Тип | По умолчанию |
|---|---|---|
name | StringName | — |
RemoveThemeStyleboxOverridevoid
public void RemoveThemeStyleboxOverride(StringName name);Удаляет локальное переопределение для темы StyleBox с указанным name, ранее добавленное Window.AddThemeStyleboxOverride или через панель инспектора.
| Имя | Тип | По умолчанию |
|---|---|---|
name | StringName | — |
RequestAttentionvoid
public void RequestAttention();Рассказывает OS что Window Это в какой-то мере влияет на систему, например, она может моргать на панель задач.
ResetSizevoid
public void ResetSize();Сбрасывает размер до минимального размера, который является максимальным из Window.MinSize и (если включен Window.WrapControls) Window.GetContentsMinimumSize. Это эквивалентно вызову set_size(Vector2i()) (или любого размера ниже минимального).
SetAccessibilityDescriptionvoid
public void SetAccessibilityDescription(string description);| Имя | Тип | По умолчанию |
|---|---|---|
description | string | — |
SetAccessibilityNamevoid
public void SetAccessibilityName(string name);| Имя | Тип | По умолчанию |
|---|---|---|
name | string | — |
SetAutoTranslatevoid
public void SetAutoTranslate(bool enable);| Имя | Тип | По умолчанию |
|---|---|---|
enable | bool | — |
SetContentScaleAspectvoid
public void SetContentScaleAspect(Window.ContentScaleAspectEnum aspect);Задаёт ContentScaleAspect. Политика пропорций при масштабировании. Keep сохраняет базовую область с полосами при необходимости; Expand открывает дополнительную логическую область; Ignore допускает неравномерное растяжение. Не расставляет элементы UI автоматически.
| Имя | Тип | По умолчанию |
|---|---|---|
aspect | Window.ContentScaleAspectEnum | — |
aspectПолитика пропорций при масштабировании. Keep сохраняет базовую область с полосами при необходимости; Expand открывает дополнительную логическую область; Ignore допускает неравномерное растяжение. Не расставляет элементы UI автоматически.
SetContentScaleFactorvoid
public void SetContentScaleFactor(float factor);Задаёт ContentScaleFactor. Множитель масштаба всего содержимого, а не только шрифта. В проверенном CanvasItems увеличение 1 → 2 уменьшает логическую видимую область вдвое по каждой оси. В режиме Viewport также влияет на внутренний размер отрисовки; проверяйте компоновку и качество отдельно.
| Имя | Тип | По умолчанию |
|---|---|---|
factor | float | — |
factorМножитель масштаба всего содержимого, а не только шрифта. В проверенном CanvasItems увеличение 1 → 2 уменьшает логическую видимую область вдвое по каждой оси. В режиме Viewport также влияет на внутренний размер отрисовки; проверяйте компоновку и качество отдельно.
SetContentScaleModevoid
public void SetContentScaleMode(Window.ContentScaleModeEnum mode);Задаёт ContentScaleMode. Режим масштабирования содержимого окна. CanvasItems масштабирует логическое 2D и рисует в подогнанном размере окна; Viewport рисует в базовом разрешении и затем масштабирует изображение. Не тождественен отдельному масштабу 3D.
| Имя | Тип | По умолчанию |
|---|---|---|
mode | Window.ContentScaleModeEnum | — |
modeРежим масштабирования содержимого окна. CanvasItems масштабирует логическое 2D и рисует в подогнанном размере окна; Viewport рисует в базовом разрешении и затем масштабирует изображение. Не тождественен отдельному масштабу 3D.
SetContentScaleSizevoid
public void SetContentScaleSize(Vector2I size);Задаёт ContentScaleSize. Базовый размер дизайна для масштабирования окна. Не переключает разрешение монитора и не равен обязательно Size окна или размеру render target. Итоговая логическая область зависит от режима, политики пропорций и ContentScaleFactor.
| Имя | Тип | По умолчанию |
|---|---|---|
size | Vector2I | — |
sizeБазовый размер дизайна для масштабирования окна. Не переключает разрешение монитора и не равен обязательно Size окна или размеру render target. Итоговая логическая область зависит от режима, политики пропорций и ContentScaleFactor.
SetContentScaleStretchvoid
public void SetContentScaleStretch(Window.ContentScaleStretchEnum stretch);| Имя | Тип | По умолчанию |
|---|---|---|
stretch | Window.ContentScaleStretchEnum | — |
SetCurrentScreenvoid
public void SetCurrentScreen(int index);| Имя | Тип | По умолчанию |
|---|---|---|
index | int | — |
SetExclusivevoid
public void SetExclusive(bool exclusive);| Имя | Тип | По умолчанию |
|---|---|---|
exclusive | bool | — |
SetFlagvoid
public void SetFlag(Window.Flags flag, bool enabled);Устанавливает указанный флаг окна.
| Имя | Тип | По умолчанию |
|---|---|---|
flag | Window.Flags | — |
enabled | bool | — |
SetForceNativevoid
public void SetForceNative(bool forceNative);| Имя | Тип | По умолчанию |
|---|---|---|
forceNative | bool | — |
SetFullscreenShortcutEnabledvoid
public void SetFullscreenShortcutEnabled(bool enabled);| Имя | Тип | По умолчанию |
|---|---|---|
enabled | bool | — |
SetHdrOutputRequestedvoid
public void SetHdrOutputRequested(bool requested);| Имя | Тип | По умолчанию |
|---|---|---|
requested | bool | — |
SetImeActivevoid
public void SetImeActive(bool active);Если active это true, позволяет IME системы (IME)Input Редактор метода).
| Имя | Тип | По умолчанию |
|---|---|---|
active | bool | — |
SetImePositionvoid
public void SetImePosition(Vector2I position);Перемещает IME в указанную позицию.
| Имя | Тип | По умолчанию |
|---|---|---|
position | Vector2I | — |
SetInitialPositionvoid
public void SetInitialPosition(Window.WindowInitialPosition initialPosition);| Имя | Тип | По умолчанию |
|---|---|---|
initialPosition | Window.WindowInitialPosition | — |
SetKeepTitleVisiblevoid
public void SetKeepTitleVisible(bool titleVisible);| Имя | Тип | По умолчанию |
|---|---|---|
titleVisible | bool | — |
SetLayoutDirectionvoid
public void SetLayoutDirection(Window.LayoutDirection direction);Устанавливает направление макета и направление написания текста. Для некоторых языков (например, арабского и иврита) необходимы макеты справа налево.
| Имя | Тип | По умолчанию |
|---|---|---|
direction | Window.LayoutDirection | — |
SetMaxSizevoid
public void SetMaxSize(Vector2I maxSize);| Имя | Тип | По умолчанию |
|---|---|---|
maxSize | Vector2I | — |
SetMinSizevoid
public void SetMinSize(Vector2I minSize);| Имя | Тип | По умолчанию |
|---|---|---|
minSize | Vector2I | — |
SetModevoid
public void SetMode(Window.ModeEnum mode);| Имя | Тип | По умолчанию |
|---|---|---|
mode | Window.ModeEnum | — |
SetMousePassthroughPolygon2 перегрузки
public void SetMousePassthroughPolygon(Vector2[] polygon);| Имя | Тип | По умолчанию |
|---|---|---|
polygon | Vector2[] | — |
public void SetMousePassthroughPolygon(ReadOnlySpan<Vector2> polygon);| Имя | Тип | По умолчанию |
|---|---|---|
polygon | ReadOnlySpan<Vector2> | — |
SetNonclientAreavoid
public void SetNonclientArea(Rect2I area);| Имя | Тип | По умолчанию |
|---|---|---|
area | Rect2I | — |
SetPositionvoid
public void SetPosition(Vector2I position);| Имя | Тип | По умолчанию |
|---|---|---|
position | Vector2I | — |
SetSizevoid
public void SetSize(Vector2I size);| Имя | Тип | По умолчанию |
|---|---|---|
size | Vector2I | — |
SetTaskbarProgressStatevoid
public void SetTaskbarProgressState(DisplayServer.ProgressState state);Устанавливает тип и состояние индикатора выполнения на значке панели задач/док-панели Window. См. DisplayServer.ProgressState для получения информации о возможных значениях и поведении каждого режима.
Примечание: Этот метод реализован только в Windows и macOS.
| Имя | Тип | По умолчанию |
|---|---|---|
state | DisplayServer.ProgressState | — |
SetTaskbarProgressValuevoid
public void SetTaskbarProgressValue(float value);Создает индикатор выполнения на значке Window на панели задач/доке, если он отсутствует, и устанавливает прогресс отображения значка.
value выступает в качестве относительного процентного значения, диапазон от 0.0 (минимальное) до 1.0 (максимальное).
Примечание: Этот метод реализован только в Windows и macOS.
| Имя | Тип | По умолчанию |
|---|---|---|
value | float | — |
SetThemevoid
public void SetTheme(Theme theme);| Имя | Тип | По умолчанию |
|---|---|---|
theme | Theme | — |
SetThemeTypeVariationvoid
public void SetThemeTypeVariation(StringName themeType);| Имя | Тип | По умолчанию |
|---|---|---|
themeType | StringName | — |
SetTitlevoid
public void SetTitle(string title);| Имя | Тип | По умолчанию |
|---|---|---|
title | string | — |
SetTransientvoid
public void SetTransient(bool transient);| Имя | Тип | По умолчанию |
|---|---|---|
transient | bool | — |
SetTransientToFocusedvoid
public void SetTransientToFocused(bool enable);| Имя | Тип | По умолчанию |
|---|---|---|
enable | bool | — |
SetUnparentWhenInvisiblevoid
public void SetUnparentWhenInvisible(bool unparent);Если unparent равен true, окно автоматически теряет родительский статус при переходе в невидимое состояние.
Примечание: Обязательно сохраните ссылку на узел, иначе он станет осиротевшим. Вам также нужно вручную вызвать Entity.QueueFree, чтобы освободить окно, если оно не является родительским.
| Имя | Тип | По умолчанию |
|---|---|---|
unparent | bool | — |
SetUseFontOversamplingvoid
public void SetUseFontOversampling(bool enable);Включает избыточную выборку шрифтов. Это позволяет шрифтам выглядеть лучше при увеличении масштаба.
| Имя | Тип | По умолчанию |
|---|---|---|
enable | bool | — |
SetVisiblevoid
public void SetVisible(bool visible);| Имя | Тип | По умолчанию |
|---|---|---|
visible | bool | — |
SetWrapControlsvoid
public void SetWrapControls(bool enable);| Имя | Тип | По умолчанию |
|---|---|---|
enable | bool | — |
Showvoid
public void Show();Заставляет Window появиться. Это позволяет взаимодействовать с Window и не изменяет никаких его свойств, кроме видимости (в отличие, например, от Window.Popup).
StartDragvoid
public void StartDrag();Запускает интерактивную операцию перетаскивания в окне, используя текущую позицию мыши. Вызывайте этот метод при обработке нажатия кнопки мыши для имитации события нажатия в заголовке окна. Использование этого метода позволяет окну участвовать в переключении пространства, мозаичном размещении и других системных функциях.
StartResizevoid
public void StartResize(DisplayServer.WindowResizeEdge edge);Запускает интерактивную операцию изменения размера окна, используя текущую позицию мыши. Вызывайте этот метод при обработке нажатия кнопки мыши для имитации события нажатия на краю окна.
| Имя | Тип | По умолчанию |
|---|---|---|
edge | DisplayServer.WindowResizeEdge | — |
_GetContentsMinimumSizeVector2
public virtual Vector2 _GetContentsMinimumSize();Виртуальный метод, реализуемый пользователем. Переопределяет значение, возвращаемое Window.GetContentsMinimumSize.
Vector2Сигналы и события16
AboutToPopupСобытие
public event Action AboutToPopup;Вызывается сразу после вызова Window.Popup, до того, как появится Window или произойдет что-либо еще.
CloseRequestedСобытие
public event Action CloseRequested;Запрос закрытия окна. Для главного окна учитывайте EntityTree.AutoAcceptQuit. При несохранённых изменениях сначала получите решение пользователя и проверьте сохранение; не завершайте процесс после ошибки записи.
DpiChangedСобытие
public event Action DpiChanged;Удалено, когда Window:: изменения ДОИ в результате OS- изменения уровня (например, перенос окна с дисплея " Сетчатка " на более низкое разрешение).
Примечание: Осуществляется только на MacOS и Linux (Wayland).
FilesDroppedСобытие
public event Window.FilesDroppedEventHandler FilesDropped;Приемлемо, когда файлы вытаскиваются из OS Файл-менеджер и выброшен в окно игры. Аргумент - это список файловых путей.
Примечание: Этот сигнал работает только с внутренними окнами, т.е. главным окном и Window- Наличие узлов, когда Viewport.GuiEmbedSubwindows , отключена в главном порту.
Примечание: На веб-платформе файлы сбрасываются во временную папку и удаляются автоматически после подачи сигнала. user://) для их сохранения.
Сосредоточься
| Имя | Тип | По умолчанию |
|---|---|---|
files | string[] | — |
FocusEnteredСобытие
public event Action FocusEntered;Вызывается, когда Window получает фокус.
Сосредоточься
FocusExitedСобытие
public event Action FocusExited;Возникает, когда Window теряет фокус.
GoBackRequestedСобытие
public event Action GoBackRequested;Вызывается при отправке запроса на возврат (например, при нажатии кнопки "Назад" на Android), сразу после Entity.NotificationWMGoBackRequest.
MouseEnteredСобытие
public event Action MouseEntered;Вызывается, когда курсор мыши попадает в видимую область Window, которая не перекрыта другими Control или окнами, при условии, что его Viewport.GuiDisableInput имеет значение false и независимо от того, находится ли он в данный момент в фокусе или нет.
MouseExitedСобытие
public event Action MouseExited;Вызывается, когда курсор мыши покидает видимую область Window, которая не перекрыта другими Control или окнами, при условии, что его Viewport.GuiDisableInput имеет значение false и независимо от того, находится ли он в данный момент в фокусе или нет.
NonclientWindowInputСобытие
public event Window.NonclientWindowInputEventHandler NonclientWindowInput;Событие генерируется при получении события мыши пользовательской областью оформления, определенной параметром Window.NonclientArea, и блокировке обычного ввода в окно (например, когда в нем открыт эксклюзивный дочерний элемент). Позиция event указана в системе координат встраиваемого элемента.
| Имя | Тип | По умолчанию |
|---|---|---|
event | InputEvent | — |
OutputMaxLinearValueChangedСобытие
public event Window.OutputMaxLinearValueChangedEventHandler OutputMaxLinearValueChanged;Испускается, когда максимальное линейное значение вывода, возвращаемое Window.GetOutputMaxLinearValue, изменилось. Это происходит при включении или отключении вывода HDR и при изменении любых значений яркости вывода HDR окна, например, когда игрок изменяет настройки яркости экрана или перемещает окно на другой экран. output_max_linear_value — новое значение.
| Имя | Тип | По умолчанию |
|---|---|---|
outputMaxLinearValue | double | — |
ThemeChangedСобытие
public event Action ThemeChanged;Вызывается при отправке уведомления Window.NotificationThemeChanged.
TitleChangedСобытие
public event Action TitleChanged;Выдается при изменении текста заголовка окна.
TitlebarChangedСобытие
public event Action TitlebarChanged;Генерируется при изменении оформления заголовка окна, например, при входе/выходе окна macOS из полноэкранного режима или при изменении флага расширения до заголовка.
VisibilityChangedСобытие
public event Action VisibilityChanged;Выдается, когда Window становится видимым или исчезает.
WindowInputСобытие
public event Window.WindowInputEventHandler WindowInput;Генерируется, когда Window в данный момент сфокусировано и принимает какие-либо входные данные, передавая полученное событие в качестве аргумента. Положение события, если оно присутствует, находится в системе координат внедренца.
| Имя | Тип | По умолчанию |
|---|---|---|
event | InputEvent | — |
Поля и константы2
NotificationThemeChangedПоле
public const long NotificationThemeChanged = 32;Отправляется, когда узлу необходимо обновить элементы своей темы. Это происходит в одном из следующих случаев:
- Свойство
Window.Themeизменено на этом узле или любом из его предков. - Свойство
Window.ThemeTypeVariationизменено на этом узле. - Узел входит в дерево сцен. Примечание: В качестве оптимизации это уведомление не будет отправлено из-за изменений, которые происходят, когда этот узел находится за пределами дерева сцен. Вместо этого все обновления элементов темы могут быть применены сразу, когда узел входит в дерево сцены.
NotificationVisibilityChangedПоле
public const long NotificationVisibilityChanged = 30;Испускается при изменении видимости Window, непосредственно перед Window.VisibilityChanged.
УВЕДОМЛЕНИЕ_ТЕМА_ ИЗМЕНЕНИЕ
Window.ContentScaleAspectEnum
| Значение | Описание |
|---|---|
Expand = 4 | Формат содержимого будет сохранен. Если целевой размер отличается от базового, содержимое останется в верхнем левом углу и добавит дополнительную видимую область в растянутом пространстве. |
Ignore = 0 | Аспект будет проигнорирован. Масштабирование просто растянет содержимое в соответствии с целевым размером. |
Keep = 1 | Формат содержимого будет сохранен. Если целевой размер отличается от базового, изображение будет отцентрировано, а с левой и правой сторон появятся черные полосы. |
KeepHeight = 3 | Содержимое можно развернуть по горизонтали. Масштабирование по вертикали приведет к сохранению соотношения высот, а затем черных полос сверху и снизу. |
KeepWidth = 2 | Содержимое можно развернуть по вертикали. Масштабирование по горизонтали приведет к сохранению соотношения ширины, а затем черных полос с левой и правой сторон. |
Window.ContentScaleModeEnum
| Значение | Описание |
|---|---|
CanvasItems = 1 | Содержимое будет отображаться в целевом размере. Это более затратно по производительности, чем |
Disabled = 0 | Содержимое не будет масштабироваться в соответствии с размером |
Viewport = 2 | Содержимое будет отображено в базовом размере, а затем масштабировано до целевого размера. Более производительно, чем |
Window.ContentScaleStretchEnum
| Значение | Описание |
|---|---|
Fractional = 0 | Содержимое будет растянуто в соответствии с дробным коэффициентом. Это заполняет все доступное пространство в окне, но допускает "колебание пикселя" из-за неравномерного масштабирования пикселей. |
Integer = 1 | Содержимое будет растянуто только в соответствии с целым коэффициентом, сохраняя четкие пиксели. В зависимости от размера окна по краям окна может быть виден черный фон. |
Window.Flags
| Значение | Описание |
|---|---|
AlwaysOnTop = 2 | Окно плавает поверх всех остальных окон. Этот флаг игнорируется для полноэкранных окон. Устанавливается с помощью |
Borderless = 1 | Окно не имеет встроенной строки заголовка и других украшений. Этот флаг игнорируется для полноэкранных окон. Устанавливается с помощью |
ExcludeFromCapture = 9 | Окно Windows не учитывается при создании снимков экрана с помощью |
ExtendToTitle = 6 | Window В отличие от безграничного окна, рама остается нетронутой и может использоваться для изменения размера окна, заголовок является транспарентным, но имеет кнопки с минимальным/максимальным/близким размерами. |
Max = 13 | Максимальное значение |
MaximizeDisabled = 12 | Window Отключена кнопка максимального использования. Примечание: Этот флаг не влияет на встроенные окна. Примечание: Этот флаг действует на Linux (X11), acOS и Windows. |
MinimizeDisabled = 11 | Window Отключена кнопка сведения к минимуму. Примечание: Этот флаг не влияет на встроенные окна. Примечание: Этот флаг действует на Linux (X11), acOS и Windows. |
MousePassthrough = 7 | Все события мыши передаются в базовое окно того же приложения. Примечание: Этот флаг не действует во встроенных окнах. Примечание: Этот флаг реализован на Linux (X11), macOS, Windows. |
NoFocus = 4 | Окно не может быть сфокусировано. Окно без фокуса будет игнорировать весь ввод, кроме щелчков мыши. Устанавливается с помощью |
Popup = 5 | Window является частью меню или |
PopupWMHint = 10 | Сообщает оконному менеджеру, что это окно должно быть определённым реализацией «всплывающим» окном (обычно плавающим, без рамок, неразворачиваемым и неподвижным дочерним окном). Примечание: Этот флаг не действует во встроенных окнах. Примечание: Этот флаг реализован на Linux (Wayland). |
ResizeDisabled = 0 | Размер окна нельзя изменить, перетаскивая его ручку изменения размера. По-прежнему можно изменить размер окна, используя |
SharpCorners = 8 | Window стиль переворачивается, вынуждая острые углы. Примечание: Этот флаг не влияет на встроенные окна. Примечание: Этот флаг установлен только на Windows (11). |
Transparent = 3 | Фон окна может быть прозрачным. Задается с помощью |
Window.LayoutDirection
| Значение | Описание |
|---|---|
ApplicationLocale = 1 | Автоматическое направление макета, определяемое на основе текущей локали. |
Inherited = 0 | Автоматическое направление компоновки, определяемое по направлению компоновки родительского окна. |
Locale = 1 | |
Ltr = 2 | Направление макета слева направо. |
Max = 5 | Представляет размер перечисления |
Rtl = 3 | Направление раскладки справа налево. |
SystemLocale = 4 | Автоматическое направление макета, определяемое на основе локали системы. |
Window.ModeEnum
| Значение | Описание |
|---|---|
ExclusiveFullscreen = 4 | Однооконный полноэкранный режим. Этот режим менее нагружает систему, но на данном экране одновременно может быть открыто только одно окно (открытие дочернего окна или переключение приложений запускает полноэкранный переход).
Полноэкранное окно занимает всю область экрана без рамки или декоративных элементов. Видеорежим дисплея не изменяется.
Примечание: Этот режим может не работать с программами для записи экрана.
На Android: Это включает режим погружения.
На Windows: В зависимости от видеодрайвера, полноэкранный переход может привести к кратковременному потемнению экрана.
На macOS: Для отображения запущенного проекта используется новый рабочий стол. Эксклюзивный полноэкранный режим предотвращает отображение Dock и меню при наведении указателя мыши на край экрана.
На Linux (X11): Эксклюзивный полноэкранный режим обходит композитора.
В Linux (Wayland): Эквивалентно |
Fullscreen = 3 | Полноэкранный режим с полной поддержкой многооконности. Полноэкранное окно охватывает всю область отображения экрана и не имеет украшений. Видеорежим дисплея не изменяется. На Android: Это включает режим погружения. На macOS: Новый рабочий стол используется для отображения запущенного проекта. Примечание: Независимо от платформы, включение полноэкранного режима изменит размер окна в соответствии с размером монитора. Поэтому убедитесь, что ваш проект поддерживает несколько разрешений при включении полноэкранного режима. |
Maximized = 2 | Режим развернутого окна, т. е. |
Minimized = 1 | Режим минимизированного окна, т.е. |
Windowed = 0 | Оконный режим, т. е. |
Window.WindowInitialPosition
| Значение | Описание |
|---|---|
Absolute = 0 | Начальное положение окна определяется |
CenterMainWindowScreen = 2 | Начальное положение окна — центр экрана главного окна. |
CenterOtherScreen = 3 | Начальная позиция окна - это центр экрана |
CenterPrimaryScreen = 1 | Начальное положение окна — центр основного экрана. |
CenterScreenWithKeyboardFocus = 5 | Начальное положение окна - это центр экрана, содержащий окно с фокусом клавиатуры. |
CenterScreenWithMouseFocus = 4 | Начальным положением окна является центр экрана, на котором находится указатель мыши. |
Свойства темы
Это ключи ресурсов Theme, а не свойства C# класса. Используйте методы GetTheme…() и AddTheme…Override() у Control с соответствующим типом значения.
| Ключ и тип | Описание |
|---|---|
title_colorColor | Цвет текста заголовка. По умолчанию:Color(0.875, 0.875, 0.875, 1) |
title_outline_modulateColor | Цвет контура текста заголовка. По умолчанию:Color(0, 0, 0, 1) |
close_h_offsetint | Горизонтальное смещение положения кнопки закрытия относительно конца строки заголовка в сторону начала строки заголовка. По умолчанию:18 |
close_v_offsetint | Смещение вертикального положения кнопки закрытия относительно нижней части строки заголовка по направлению к верхней части строки заголовка. По умолчанию:24 |
resize_marginint | Определяет внешнее поле, за которое можно захватить границу окна мышью и изменить ее размер. По умолчанию:4 |
title_heightint | Высота строки заголовка. По умолчанию:36 |
title_outline_sizeint | Размер контура заголовка. По умолчанию:0 |
title_fontFont | Шрифт, используемый для заголовка. |
title_font_sizeint | Размер шрифта заголовка. |
closeTexture2D | Значок кнопки закрытия. |
close_pressedTexture2D | Значок кнопки закрытия при нажатии. |
embedded_borderStyleBox | Стиль фона, используемый при внедрении |
embedded_unfocused_borderStyleBox | Стиль фона, используемый, когда |