跳转到内容

SusRepeatButton

SusRepeatButton

按住即可自动重复点击 —— 先延迟,再按间隔触发。

SusKit · 原子(商业)

在 Playground 中打开

SusKit · Atoms

属性

名称类型默认值
TextProp<string>"Hold"v-model
IconProp<string>""v-model
VariantProp<string>"elevated"v-model
ColorProp<string>"primary"v-model
SizeProp<string>"default"v-model
DisabledProp<bool>falsev-model
InitialDelayMsProp<int>400v-model
IntervalMsProp<int>80v-model
IsHoldingProp<bool>falsev-model

插槽

没有插槽。

事件

名称字段载荷
ClickOnClick
RepeatOnRepeat

样式钩子

USS 类契约 — 无需改 C# 即可覆盖外观。状态通过这些类切换:

  • sus-repeat-button
  • sus-repeat-button--disabled
  • sus-repeat-button--holding

用法

xml
<template>
  <sus:SusRepeatButton Text="+"
                       Variant="tonal"
                       Color="primary"
                       InitialDelayMs="400"
                       IntervalMs="80"
                       @click="OnStep"
                       @repeat="OnStep" />
</template>

<script>
void OnStep() { /* increment once per click / tick */ }
</script>
csharp
var rpt = new SusRepeatButton();
rpt.Text.Value = "−";
rpt.InitialDelayMs.Value = 400;
rpt.IntervalMs.Value = 80;
rpt.OnClick += () => { /* … */ };
rpt.OnRepeat += () => { /* … */ };

变体

elevated · flat · tonal · outlined · text · plain

备注

  • OnClick 在按下时触发;OnRepeat 在按住期间每次自动触发时都会触发。