StyleBox
Наследует: Resource < RefCounted < Object
Наследуется от: StyleBoxEmpty, StyleBoxFlat, StyleBoxLine, StyleBoxTexture
Абстрактный базовый класс для определения стилизованных рамок для элементов пользовательского интерфейса UI.
Описание
StyleBox — абстрактный базовый класс для рисования стилизованных рамок для элементов пользовательского интерфейса. Он используется для панелей, кнопок, фонов LineEdit, фонов Tree и т. д., а также для тестирования маски прозрачности для сигналов указателя. Если тест маски не пройден на StyleBox, назначенном в качестве маски для элемента управления, щелчки и сигналы движения будут проходить через него к расположенному ниже.
Примечание: Для узлов управления, имеющих Свойства темы, фокус StyleBox отображается поверх нормального, наведенного или нажатого StyleBox. Это делает фокус StyleBox более пригодным для повторного использования в разных узлах.
Свойства
|
||
|
||
|
||
|
Методы
void |
_draw(to_canvas_item: RID, rect: Rect2) virtual required const |
_get_draw_rect(rect: Rect2) virtual const |
|
_get_minimum_size() virtual const |
|
_test_mask(point: Vector2, rect: Rect2) virtual const |
|
void |
|
get_content_margin(margin: Side) const |
|
get_current_item_drawn() const |
|
get_margin(margin: Side) const |
|
get_minimum_size() const |
|
get_offset() const |
|
void |
set_content_margin(margin: Side, offset: float) |
void |
set_content_margin_all(offset: float) |
Описания свойств
float content_margin_bottom = -1.0 🔗
Нижнее поле для содержимого этого блока стиля. Увеличение этого значения уменьшает доступное для содержимого пространство снизу.
Если это значение отрицательное, оно игнорируется, и вместо него используется поле, специфичное для дочернего элемента. Например, для StyleBoxFlat вместо этого используется толщина границы (если таковая имеется).
Код, использующий этот блок стиля, должен решить, что это за содержимое: например, Button учитывает это поле содержимого для текстового содержимого кнопки.
get_margin() следует использовать для получения этого значения как потребителя вместо прямого чтения этих свойств. Это связано с тем, что он правильно учитывает отрицательные значения и резервный вариант, упомянутый выше.
float content_margin_left = -1.0 🔗
Левое поле для содержимого этого блока стиля. Увеличение этого значения уменьшает пространство, доступное для содержимого слева.
Дополнительные соображения см. в content_margin_bottom.
float content_margin_right = -1.0 🔗
Правое поле для содержимого этого блока стиля. Увеличение этого значения уменьшает пространство, доступное для содержимого справа.
Дополнительные соображения см. в content_margin_bottom.
float content_margin_top = -1.0 🔗
Верхнее поле для содержимого этого блока стиля. Увеличение этого значения уменьшает пространство, доступное для содержимого сверху.
Дополнительные соображения см. в content_margin_bottom.
Описания метода
void _draw(to_canvas_item: RID, rect: Rect2) virtual required const 🔗
There is currently no description for this method. Please help us by contributing one!
Rect2 _get_draw_rect(rect: Rect2) virtual const 🔗
There is currently no description for this method. Please help us by contributing one!
Vector2 _get_minimum_size() virtual const 🔗
Виртуальный метод, реализуемый пользователем. Возвращает минимальный размер, который stylebox должен учитывать при рисовании. По умолчанию get_minimum_size() учитывает только поля содержимого. Этот метод можно переопределить, чтобы добавить еще одно ограничение размера. Будет использоваться комбинация поведения по умолчанию и вывода этого метода для учета обоих размеров.
bool _test_mask(point: Vector2, rect: Rect2) virtual const 🔗
There is currently no description for this method. Please help us by contributing one!
void draw(canvas_item: RID, rect: Rect2) const 🔗
Рисует stylebox, используя элемент холста, идентифицированный заданным RID.
Значение RID может быть либо результатом CanvasItem.get_canvas_item(), вызванного на существующем узле, производном от CanvasItem, либо непосредственно в результате создания элемента холста в RenderingServer с помощью RenderingServer.canvas_item_create().
float get_content_margin(margin: Side) const 🔗
Возвращает поле по умолчанию для указанного Side.
CanvasItem get_current_item_drawn() const 🔗
Возвращает CanvasItem, который обрабатывает свой обратный вызов CanvasItem.NOTIFICATION_DRAW или CanvasItem._draw() в данный момент.
float get_margin(margin: Side) const 🔗
Возвращает смещение поля содержимого для указанного Side.
Положительные значения уменьшают размер внутрь, в отличие от значений полей Control.
Vector2 get_minimum_size() const 🔗
Возвращает минимальный размер, до которого можно уменьшить этот stylebox.
Возвращает «смещение» stylebox. Эта вспомогательная функция возвращает значение, эквивалентное Vector2(style.get_margin(MARGIN_LEFT), style.get_margin(MARGIN_TOP)).
void set_content_margin(margin: Side, offset: float) 🔗
Устанавливает значение по умолчанию для указанного Side на offset пикселей.
void set_content_margin_all(offset: float) 🔗
Устанавливает поле по умолчанию на offset пикселей для всех сторон.
bool test_mask(point: Vector2, rect: Rect2) const 🔗
Проверяем позицию в прямоугольнике и даем ответ, прошла ли она тест на маску.