Slider

拖动滑块调整数值或区间。

实时预览

正在加载预览…

参数配置

全部字段 30

SliderOptions

Styles · 0

RangeSliderOptions

Styles · 0

Go 代码

Go
// Inside a view; c is *ui.Context, t is nui.Theme.
// Keep s (example state) outside the view. See the complete example.
nui.Slider(c.Key("slider"), t, &s.Value, nui.SliderOptions{Label: "Volume", Min: nui.Set(0.0), Max: nui.Set(100.0), Step: 5, Color: nui.ColorDefault, Size: nui.SizeDefault, Disabled: false, Vertical: false, Tooltip: true})
ui.Textf(c, "Value: %.0f", s.Value)
nui.RangeSlider(c.Key("range"), t, &s.Low, &s.High, nui.RangeSliderOptions{Label: "Range", Min: 0, Max: 100, Step: 5, Color: nui.ColorDefault, Size: nui.SizeDefault, Disabled: false})

使用说明

上方 Slider 编辑单个数值,下方 RangeSlider 编辑区间。拖动或使用键盘调整,再修改步长与方向;示例范围固定为 0 到 100,值保存在视图外。

API 参考

Slider

源码
func Slider(c *ui.Context, t Theme, value *float64, o SliderOptions) ui.Element

RangeSlider

源码
func RangeSlider(c *ui.Context, t Theme, low, high *float64, o RangeSliderOptions) ui.Element

SliderOptions

源码
type SliderOptions struct {
	Label, Description string
	Min, Max           Optional[float64]
	Step               float64
	Color              Color
	Size               Size
	Disabled, Vertical bool
	Inverted, Tooltip  bool
	OnChange           func(float64)
	OnCommit           func(float64) // Release or a keyboard step; OnChange continues to report live changes.
	Decoration
}
字段类型说明
Labelstring

Go 零值: ""

控件标签或可访问名称。

Descriptionstring

Go 零值: ""

补充说明文字。

MinOptional[float64]

Go 零值: unset

下界;Optional 可明确指定零。

MaxOptional[float64]

Go 零值: unset

上界或数量上限,具体含义依组件而定。

Stepfloat64

Go 零值: 0

每次调整的步长。

ColorColor

Go 零值: ColorDefault

语义颜色;默认值继承主题或组件配色。

SizeSize

Go 零值: SizeDefault

组件尺寸;默认值继承主题或组件尺寸。

Disabledbool

Go 零值: false

禁用组件及其交互。

Verticalbool

Go 零值: false

启用纵向排列。

Invertedbool

Go 零值: false

反转数值或视觉方向。

Tooltipbool

Go 零值: false

显示滑块数值提示。

OnChangefunc(float64)

Go 零值: nil

值发生变化时通知应用的回调。

OnCommitfunc(float64)

Go 零值: nil

提交一次调整时通知应用的回调。

UIStyles

Go 零值: zero value

以部件名称为键覆盖外观和间距。

Stylefunc(Slot, ui.Element)

Go 零值: nil

同步配置当前构建的部件;不要保留 Element。

RangeSliderOptions

源码
type RangeSliderOptions struct {
	Label                 string
	Min, Max, Step        float64
	Disabled              bool
	Orientation           Orientation
	Inverted, Tooltip     bool
	MinStepsBetweenThumbs int
	Color                 Color
	Size                  Size
	OnChange              func(float64, float64)
	OnCommit              func(float64, float64)
	Decoration
}
字段类型说明
Labelstring

Go 零值: ""

控件标签或可访问名称。

Minfloat64

Go 零值: 0

下界;Optional 可明确指定零。

Maxfloat64

Go 零值: 0

上界或数量上限,具体含义依组件而定。

Stepfloat64

Go 零值: 0

每次调整的步长。

Disabledbool

Go 零值: false

禁用组件及其交互。

OrientationOrientation

Go 零值: zero value

水平或垂直方向;未设置时使用组件默认方向。

Invertedbool

Go 零值: false

反转数值或视觉方向。

Tooltipbool

Go 零值: false

显示滑块数值提示。

MinStepsBetweenThumbsint

Go 零值: 0

两个滑块之间的最少步数。

ColorColor

Go 零值: ColorDefault

语义颜色;默认值继承主题或组件配色。

SizeSize

Go 零值: SizeDefault

组件尺寸;默认值继承主题或组件尺寸。

OnChangefunc(float64, float64)

Go 零值: nil

值发生变化时通知应用的回调。

OnCommitfunc(float64, float64)

Go 零值: nil

提交一次调整时通知应用的回调。

UIStyles

Go 零值: zero value

以部件名称为键覆盖外观和间距。

Stylefunc(Slot, ui.Element)

Go 零值: nil

同步配置当前构建的部件;不要保留 Element。