TextureProgress
Inherits: Range < Control < CanvasItem < Node < Object
基于纹理的进度条。适用于加载屏幕和生命或体力条。
描述
TextureProgress的工作原理与ProgressBar类似,但最多使用3个纹理,而不是Godot的Theme资源。它可以用来创建水平、垂直和径向的进度条。
属性
| ||
mouse_filter |
| |
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
|
方法
get_stretch_margin ( Margin margin ) const | |
void | set_stretch_margin ( Margin margin, int value ) |
枚举
enum FillMode:
FILL_LEFT_TO_RIGHT = 0 —- texture_progress从左到右填充。
FILL_RIGHT_TO_LEFT = 1 —- texture_progress 从右到左填充。
FILL_TOP_TO_BOTTOM = 2 —- texture_progress 从上到下填充。
FILL_BOTTOM_TO_TOP = 3 —- texture_progress 自下而上填充。
FILL_CLOCKWISE = 4 —- 将节点变成径向条形。texture_progress 顺时针填充。参阅radial_center_offset、radial_initial_angle和radial_fill_degrees来控制条形填充的方式。
FILL_COUNTER_CLOCKWISE = 5 —- 将节点变成径向条形。texture_progress逆时针填充。参阅radial_center_offset、radial_initial_angle和radial_fill_degrees来控制条形填充的方式。
FILL_BILINEAR_LEFT_AND_RIGHT = 6 —- texture_progress从中心开始填充,向左和向右扩展。
FILL_BILINEAR_TOP_AND_BOTTOM = 7 —- texture_progress从中心开始填充,同时向顶部和底部扩展。
FILL_CLOCKWISE_AND_COUNTER_CLOCKWISE = 8 —- 将节点变成径向条形。texture_progress从中心径向填充,顺时针和逆时针扩展。参阅radial_center_offset、radial_initial_angle和radial_fill_degrees来控制条形填充的方式。
属性说明
- int fill_mode
Default |
|
Setter | set_fill_mode(value) |
Getter | get_fill_mode() |
填充方向。有关可能的值,参阅FillMode。
- bool nine_patch_stretch
Default |
|
Setter | set_nine_patch_stretch(value) |
Getter | get_nine_patch_stretch() |
如果true
,Godot会像在NinePatchRect中那样处理条形纹理。使用stretch_margin_*
属性,如stretch_margin_bottom来设置九宫格的3×3网格。当使用径向的fill_mode时,这个设置将启用拉伸功能。
- Vector2 radial_center_offset
Default |
|
Setter | set_radial_center_offset(value) |
Getter | get_radial_center_offset() |
如果fill_mode是FILL_CLOCKWISE或FILL_COUNTER_CLOCKWISE,则对texture_progress进行偏移。
- float radial_fill_degrees
Default |
|
Setter | set_fill_degrees(value) |
Getter | get_fill_degrees() |
如果fill_mode是FILL_CLOCKWISE或FILL_COUNTER_CLOCKWISE,则为texture_progress的填充上限。当节点的value
等于其max_value
时,纹理会填充到这个角度。
参阅Range.value, Range.max_value。
- float radial_initial_angle
Default |
|
Setter | set_radial_initial_angle(value) |
Getter | get_radial_initial_angle() |
如果fill_mode是FILL_CLOCKWISE或FILL_COUNTER_CLOCKWISE,texture_progress的填充起始角度。当节点的value
等于其min_value
时,纹理根本不会显示出来。当value
增加时,纹理会被填满并趋向于radial_fill_degrees。
- int stretch_margin_bottom
Default |
|
Setter | set_stretch_margin(value) |
Getter | get_stretch_margin() |
九宫格底行的高度。边距为16意味着九宫格的底角和侧面将有16像素的高度。你可以单独设置所有4个边距值,来创建具有非统一边框的面板。
- int stretch_margin_left
Default |
|
Setter | set_stretch_margin(value) |
Getter | get_stretch_margin() |
九宫格左列的宽度。
- int stretch_margin_right
Default |
|
Setter | set_stretch_margin(value) |
Getter | get_stretch_margin() |
九宫格右列的宽度。
- int stretch_margin_top
Default |
|
Setter | set_stretch_margin(value) |
Getter | get_stretch_margin() |
九宫格顶行的高度。
- Texture texture_over
Setter | set_over_texture(value) |
Getter | get_over_texture() |
在进度条之上绘制的 Texture。用它来添加高亮,或者作为上层帧来隐藏部分 texture_progress。
- Texture texture_progress
Setter | set_progress_texture(value) |
Getter | get_progress_texture() |
基于节点的value
和fill_mode进行裁剪Texture。随着value
的增加,纹理会被填满。当value
达到max_value
时,它完全显示。如果value
等于min_value
,它就完全不显示了。
value
属性来自Range。参阅Range.value, Range.min_value, Range.max_value。
- Vector2 texture_progress_offset
Default |
|
Setter | set_texture_progress_offset(value) |
Getter | get_texture_progress_offset() |
texture_progress的偏移量。对于带有花哨的边框的texture_over和texture_under很有用,可以避免进度纹理的边缘透明。
- Texture texture_under
Setter | set_under_texture(value) |
Getter | get_under_texture() |
在进度条下面绘制的Texture。即背景。
- Color tint_over
Default |
|
Setter | set_tint_over(value) |
Getter | get_tint_over() |
将条形的 texture_over
纹理的颜色相乘。其效果类似于 CanvasItem.modulate ,只是它只影响这个特定的纹理,而不是整个节点。
- Color tint_progress
Default |
|
Setter | set_tint_progress(value) |
Getter | get_tint_progress() |
将条形的 texture_progress
纹理的颜色相乘。
- Color tint_under
Default |
|
Setter | set_tint_under(value) |
Getter | get_tint_under() |
将条形的 texture_under
纹理的颜色相乘。