MujicaUI

Essentials · #485

ScrubInput 浅色主题渲染快照
浅色 · 渲染快照
ScrubInput 深色主题渲染快照
深色 · 渲染快照

485 ScrubInput 拖动数值输入

用途

按住标签左右拖动调整数值,每 4 DIP 一步;旁边的 NumberInput 可直接输入。范围、步长与精度规则与 NumberInput 相同。

最小示例

opacity := 0.6
view := func(c *ui.Context) {
	core.Use(c, core.Settings{})
	input.ScrubInput(c, "Opacity", &opacity, input.ScrubInputOptions{Max: 1, Step: 0.1})
}

签名:func ScrubInput(c *ui.Context, label string, value *float64, opts ScrubInputOptions) InputResult

参数

字段类型默认值含义
labelstring必填可拖动的标签,也是字段名称。
Min, Maxfloat64无界相等表示无界。
Stepfloat641每一步的增量。
Precisionint取自 Step保留小数位。
Disabledboolfalse不可拖动也不可输入。

状态

标签悬停或拖动时变为强调色;拖到边界即停止。

事件

Changed():拖动或输入改变了值;Submitted() 同 NumberInput。

键盘操作

标签不可聚焦;键盘在输入框内用 Up/Down 步进或直接输入。

限制

拖动只对指针可用。