MujicaUI

Calendar · #440

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

440 Stopwatch · 秒表

用途

秒表:开始、暂停、继续、计次与复位,计次列表显示单圈与累计时间。

最小示例

var sw datetime.StopwatchState
view := func(c *ui.Context) {
	core.Use(c, core.Settings{})
	if datetime.Stopwatch(c, &sw, datetime.StopwatchOptions{}).Changed() {
		fmt.Println("laps", len(sw.Laps))
	}
}
ui.Render(view, 400, 300, 1)

参数

func Stopwatch(c *ui.Context, s *StopwatchState, opts StopwatchOptions) ChoiceResult

字段类型默认值含义
Nowtime.Time零值(系统时钟)固定当前时间并停止刷新。
Disabledboolfalse禁用:不响应点击、拖动与快捷键,弹层随之关闭。
Labelstring内置文案辅助技术读出的名称。

状态

未开始、运行中、暂停(显示“继续”)、有计次、禁用。

事件

Changed() 报告开始、暂停、计次或复位;StopwatchState.Elapsed 与 Laps 读取结果。

键盘操作

  • Tab 到达开始/暂停、计次与复位,Enter 或 Space 按下。

限制

  • 运行且可见时每 100 ms 用 c.After 预约重绘;暂停或隐藏后停止。