TextureProgressBar
继承: Range
< Control
< CanvasItem
< Node
< Object
Texture-based progress bar. Useful for loading screens and life or stamina bars.
描述
TextureProgressBar works like ProgressBar
, but uses up to 3 textures instead of Godot's Theme
resource. It can be used to create horizontal, vertical and radial progress bars.
属性
方法
int | get_stretch_margin ( margin: Side ) const1 |
void | set_stretch_margin ( margin: Side, value: int ) |
枚举
enum FillMode:
FillMode FILL_LEFT_TO_RIGHT = 0
The texture_progress
fills from left to right.
FillMode FILL_RIGHT_TO_LEFT = 1
The texture_progress
fills from right to left.
FillMode FILL_TOP_TO_BOTTOM = 2
The texture_progress
fills from top to bottom.
FillMode FILL_BOTTOM_TO_TOP = 3
The texture_progress
fills from bottom to top.
FillMode FILL_CLOCKWISE = 4
Turns the node into a radial bar. The texture_progress
fills clockwise. See radial_center_offset
, radial_initial_angle
and radial_fill_degrees
to control the way the bar fills up.
FillMode FILL_COUNTER_CLOCKWISE = 5
Turns the node into a radial bar. The texture_progress
fills counterclockwise. See radial_center_offset
, radial_initial_angle
and radial_fill_degrees
to control the way the bar fills up.
FillMode FILL_BILINEAR_LEFT_AND_RIGHT = 6
The texture_progress
fills from the center, expanding both towards the left and the right.
FillMode FILL_BILINEAR_TOP_AND_BOTTOM = 7
The texture_progress
fills from the center, expanding both towards the top and the bottom.
FillMode FILL_CLOCKWISE_AND_COUNTER_CLOCKWISE = 8
Turns the node into a radial bar. The texture_progress
fills radially from the center, expanding both clockwise and counterclockwise. See radial_center_offset
, radial_initial_angle
and radial_fill_degrees
to control the way the bar fills up.
属性说明
int
fill_mode = 0
The fill direction. See FillMode for possible values.
bool
nine_patch_stretch = false
If true
, Godot treats the bar's textures like in NinePatchRect
. Use the stretch_margin_*
properties like stretch_margin_bottom
to set up the nine patch's 3×3 grid. When using a radial fill_mode
, this setting will enable stretching.
Vector2
radial_center_offset = Vector2(0, 0)
Offsets texture_progress
if fill_mode
is FILL_CLOCKWISE
, FILL_COUNTER_CLOCKWISE
, or FILL_CLOCKWISE_AND_COUNTER_CLOCKWISE
.
float
radial_fill_degrees = 360.0
Upper limit for the fill of texture_progress
if fill_mode
is FILL_CLOCKWISE
, FILL_COUNTER_CLOCKWISE
, or FILL_CLOCKWISE_AND_COUNTER_CLOCKWISE
. When the node's value
is equal to its max_value
, the texture fills up to this angle.
See Range.value
, Range.max_value
.
float
radial_initial_angle = 0.0
Starting angle for the fill of texture_progress
if fill_mode
is FILL_CLOCKWISE
, FILL_COUNTER_CLOCKWISE
, or FILL_CLOCKWISE_AND_COUNTER_CLOCKWISE
. When the node's value
is equal to its min_value
, the texture doesn't show up at all. When the value
increases, the texture fills and tends towards radial_fill_degrees
.
int
stretch_margin_bottom = 0
The height of the 9-patch's bottom row. A margin of 16 means the 9-slice's bottom corners and side will have a height of 16 pixels. You can set all 4 margin values individually to create panels with non-uniform borders. Only effective if nine_patch_stretch
is true
.
int
stretch_margin_left = 0
The width of the 9-patch's left column. Only effective if nine_patch_stretch
is true
.
int
stretch_margin_right = 0
The width of the 9-patch's right column. Only effective if nine_patch_stretch
is true
.
int
stretch_margin_top = 0
The height of the 9-patch's top row. Only effective if nine_patch_stretch
is true
.
Texture2D
texture_over
Texture2D
that draws over the progress bar. Use it to add highlights or an upper-frame that hides part of texture_progress
.
Texture2D
texture_progress
Texture2D
that clips based on the node's value
and fill_mode
. As value
increased, the texture fills up. It shows entirely when value
reaches max_value
. It doesn't show at all if value
is equal to min_value
.
The value
property comes from Range
. See Range.value
, Range.min_value
, Range.max_value
.
Vector2
texture_progress_offset = Vector2(0, 0)
The offset of texture_progress
. Useful for texture_over
and texture_under
with fancy borders, to avoid transparent margins in your progress texture.
Texture2D
texture_under
Texture2D
that draws under the progress bar. The bar's background.
Color
tint_over = Color(1, 1, 1, 1)
Multiplies the color of the bar's texture_over
texture. The effect is similar to CanvasItem.modulate
, except it only affects this specific texture instead of the entire node.
Color
tint_progress = Color(1, 1, 1, 1)
Multiplies the color of the bar's texture_progress
texture.
Color
tint_under = Color(1, 1, 1, 1)
Multiplies the color of the bar's texture_under
texture.
方法说明
int
get_stretch_margin ( margin: Side ) const1
Returns the stretch margin with the specified index. See stretch_margin_bottom
and related properties.
void
set_stretch_margin ( margin: Side, value: int
)
Sets the stretch margin with the specified index. See stretch_margin_bottom
and related properties.
本方法通常需要用户覆盖才能生效。
本方法无副作用,不会修改该实例的任何成员变量。
本方法除了能接受在此处描述的参数外,还能够继续接受任意数量的参数。
本方法用于构造某个类型。
调用本方法无需实例,可直接使用类名进行调用。
本方法描述的是使用本类型作为左操作数的有效运算符。
这个值是由下列位标志构成位掩码的整数。
无返回值。