Attention: Here be dragons
This is the latest
(unstable) version of this documentation, which may document features
not available in or compatible with released stable versions of Godot.
Checking the stable version of the documentation...
Range¶
继承: Control < CanvasItem < Node < Object
派生: EditorSpinSlider, ProgressBar, ScrollBar, Slider, SpinBox, TextureProgressBar
代表特定范围内数字的控件的抽象基类。
描述¶
Range 是代表特定范围内数字的控件的抽象基类,能够对步长 step 和分页大小 page 进行配置。使用 Range 的高阶节点示例请参考 ScrollBar 和 Slider。
属性¶
|
||
|
||
|
||
|
||
|
||
|
||
|
||
BitField[SizeFlags] |
size_flags_vertical |
|
|
||
|
方法¶
void |
_value_changed(new_value: float) virtual |
void |
set_value_no_signal(value: float) |
void |
|
void |
unshare() |
信号¶
changed() 🔗
在 min_value、max_value、page、step 改变时释放信号。
value 更改时发出。在 Slider 上使用时,会在拖动时连续调用(可能是每一帧)。如果在连接到 value_changed 的函数中执行昂贵的操作,请考虑使用去除抖动 Timer 来减少调用该函数的频率。
注意:与 LineEdit.text_changed 等信号不同,当直接通过代码设置 value
时,value_changed 仍会发出。
属性说明¶
如果为 true
,value 可能大于 max_value。
如果为 true
,value 可能小于 min_value。
如果为 true
,并且 min_value 大于 0,value 将以指数方式而不是线性方式表示。
最大值。如果 value 大于 max_value,则会被范围限制。
最小值。如果 value 小于 min_value,则会被范围限制。
页面大小。主要用于 ScrollBar。ScrollBar 的长度是它的尺寸乘以 page 超过 min_value 和 max_value 之间的差值。
该值在 0 和 1 之间进行映射。
如果为 true
,value 将始终四舍五入到最接近的整数。
如果大于 0,value 将总是被四舍五入为这个属性的倍数。如果 rounded 也是 true
,value 将首先被四舍五入为这个属性的倍数,然后舍入为最近的整数。
Range 的当前值。更改这个属性(即便是通过代码修改的)会触发 value_changed 信号。如果你想避免触发信号,请使用 set_value_no_signal。
方法说明¶
void _value_changed(new_value: float) virtual 🔗
Range 的值发生更改时调用(条件与 value_changed 相同)。
void set_value_no_signal(value: float) 🔗
将 Range 的当前值设置为指定的 value
而不发出 value_changed 信号。
将两个 Range 绑定,之前已与两者之中的任何一个组合的 Range 也会被绑定在一起。其中任何一个 Range 的成员变量改变时,它将与它的组中的所有其他 Range 共享新值。
使该 Range 停止与任何其他 Range 共享其成员变量。