HScrollBar
2026/4/14大约 1 分钟
最后同步日期:2026-04-15 | Godot 官方原文 — HScrollBar
HScrollBar
节点继承关系
继承链:Node → CanvasItem → Control → Range → ScrollBar → HScrollBar
定义
水平滚动条——就是那种水平的、可以左右拖动的长条。通常由 ScrollContainer 自动管理,很少需要手动创建。
使用频率:★★★ 一般常用(通常由 ScrollContainer 自动管理)
节点用途
- 水平方向的滚动控制
- 自定义水平滚动条
使用场景
- 宽内容区域的水平滚动
- 自定义 ScrollContainer 的滚动条
常用节点搭配
- 搭配
ScrollContainer使用
生效必备素材/资源
无需特殊资源。
节点属性与信号
继承自 ScrollBar
| 属性 | 类型 | 默认值 | 继承自 | 说明 |
|---|---|---|---|---|
custom_step | float | 0.0 | ScrollBar | 自定义步进值 |
继承自 Range
| 属性 | 类型 | 默认值 | 继承自 | 说明 |
|---|---|---|---|---|
min_value | float | 0.0 | Range | 最小值 |
max_value | float | 100.0 | Range | 最大值 |
value | float | 0.0 | Range | 当前值 |
信号
| 信号 | 触发时机 | 参数 |
|---|---|---|
value_changed | 值变化时 | float 新值 |
常用方法
继承自 Range 的所有方法。
代码示例
C
using Godot;
public partial class CustomScrollBar : Control
{
public override void _Ready()
{
var scrollBar = new HScrollBar();
scrollBar.MinValue = 0;
scrollBar.MaxValue = 1000;
scrollBar.Value = 0;
scrollBar.Step = 1;
scrollBar.CustomMinimumSize = new Vector2(300, 20);
scrollBar.Position = new Vector2(0, 380);
scrollBar.ValueChanged += (val) =>
{
GD.Print($"水平滚动位置: {val}");
};
AddChild(scrollBar);
}
}GDScript
extends Control
func _ready():
var scroll_bar = HScrollBar.new()
scroll_bar.min_value = 0
scroll_bar.max_value = 1000
scroll_bar.value = 0
scroll_bar.step = 1
scroll_bar.custom_minimum_size = Vector2(300, 20)
scroll_bar.position = Vector2(0, 380)
scroll_bar.value_changed.connect(func(val: float):
print("水平滚动位置: " + str(val))
)
add_child(scroll_bar)