TextureProgress

Inherits: Range < Control < CanvasItem < Node < Object

基于纹理的进度条。适用于加载屏幕和生命或体力条。

描述

TextureProgress的工作原理与ProgressBar类似,但最多使用3个纹理,而不是Godot的Theme资源。它可以用来创建水平、垂直和径向的进度条。

属性

int

fill_mode

0

MouseFilter

mouse_filter

1 (overrides Control)

bool

nine_patch_stretch

false

Vector2

radial_center_offset

Vector2( 0, 0 )

float

radial_fill_degrees

360.0

float

radial_initial_angle

0.0

int

stretch_margin_bottom

0

int

stretch_margin_left

0

int

stretch_margin_right

0

int

stretch_margin_top

0

Texture

texture_over

Texture

texture_progress

Vector2

texture_progress_offset

Vector2( 0, 0 )

Texture

texture_under

Color

tint_over

Color( 1, 1, 1, 1 )

Color

tint_progress

Color( 1, 1, 1, 1 )

Color

tint_under

Color( 1, 1, 1, 1 )

方法

int

get_stretch_margin ( Margin margin ) const

void

set_stretch_margin ( Margin margin, int value )

枚举

enum FillMode:

属性说明

Default

0

Setter

set_fill_mode(value)

Getter

get_fill_mode()

填充方向。有关可能的值,参阅FillMode


  • bool nine_patch_stretch

Default

false

Setter

set_nine_patch_stretch(value)

Getter

get_nine_patch_stretch()

如果true,Godot会像在NinePatchRect中那样处理条形纹理。使用stretch_margin_*属性,如stretch_margin_bottom来设置九宫格的3×3网格。当使用径向的fill_mode时,这个设置将启用拉伸功能。


Default

Vector2( 0, 0 )

Setter

set_radial_center_offset(value)

Getter

get_radial_center_offset()

如果fill_modeFILL_CLOCKWISEFILL_COUNTER_CLOCKWISE,则对texture_progress进行偏移。


  • float radial_fill_degrees

Default

360.0

Setter

set_fill_degrees(value)

Getter

get_fill_degrees()

如果fill_modeFILL_CLOCKWISEFILL_COUNTER_CLOCKWISE,则为texture_progress的填充上限。当节点的value等于其max_value时,纹理会填充到这个角度。

参阅Range.value, Range.max_value


  • float radial_initial_angle

Default

0.0

Setter

set_radial_initial_angle(value)

Getter

get_radial_initial_angle()

如果fill_modeFILL_CLOCKWISEFILL_COUNTER_CLOCKWISEtexture_progress的填充起始角度。当节点的value等于其min_value时,纹理根本不会显示出来。当value增加时,纹理会被填满并趋向于radial_fill_degrees


  • int stretch_margin_bottom

Default

0

Setter

set_stretch_margin(value)

Getter

get_stretch_margin()

九宫格底行的高度。边距为16意味着九宫格的底角和侧面将有16像素的高度。你可以单独设置所有4个边距值,来创建具有非统一边框的面板。


  • int stretch_margin_left

Default

0

Setter

set_stretch_margin(value)

Getter

get_stretch_margin()

九宫格左列的宽度。


  • int stretch_margin_right

Default

0

Setter

set_stretch_margin(value)

Getter

get_stretch_margin()

九宫格右列的宽度。


  • int stretch_margin_top

Default

0

Setter

set_stretch_margin(value)

Getter

get_stretch_margin()

九宫格顶行的高度。


Setter

set_over_texture(value)

Getter

get_over_texture()

在进度条之上绘制的 Texture。用它来添加高亮,或者作为上层帧来隐藏部分 texture_progress


Setter

set_progress_texture(value)

Getter

get_progress_texture()

基于节点的valuefill_mode进行裁剪Texture。随着value的增加,纹理会被填满。当value达到max_value时,它完全显示。如果value等于min_value,它就完全不显示了。

value属性来自Range。参阅Range.value, Range.min_value, Range.max_value


Default

Vector2( 0, 0 )

Setter

set_texture_progress_offset(value)

Getter

get_texture_progress_offset()

texture_progress的偏移量。对于带有花哨的边框的texture_overtexture_under很有用,可以避免进度纹理的边缘透明。


Setter

set_under_texture(value)

Getter

get_under_texture()

在进度条下面绘制的Texture。即背景。


Default

Color( 1, 1, 1, 1 )

Setter

set_tint_over(value)

Getter

get_tint_over()

将条形的 texture_over 纹理的颜色相乘。其效果类似于 CanvasItem.modulate ,只是它只影响这个特定的纹理,而不是整个节点。


Default

Color( 1, 1, 1, 1 )

Setter

set_tint_progress(value)

Getter

get_tint_progress()

将条形的 texture_progress 纹理的颜色相乘。


Default

Color( 1, 1, 1, 1 )

Setter

set_tint_under(value)

Getter

get_tint_under()

将条形的 texture_under 纹理的颜色相乘。

方法说明

  • int get_stretch_margin ( Margin margin ) const

  • void set_stretch_margin ( Margin margin, int value )