RadioGroup
管理单选状态以及 Radio 项之间的键盘移动。
正在加载交互演示…
func RadioGroupExample() *ui.Element {
value, setValue := ui.CreateSignal("system")
group := ui.NewRadioGroup(ui.RadioGroupProps{Value: func() *string {
current := value()
return ¤t
}, OnValueChange: func(next string, _ *native.Event) {
setValue(next)
}})
options := make([]*ui.Element, 0, 3)
for _, value := range []string{"light", "dark", "system"} {
radio := ui.NewRadio().Value(value)
options = append(options, radio.Root().Children(
radio.Indicator(),
ui.Text(value),
))
}
return group.Root().Children(options)
}#导入
从 github.com/egoist/quickgui/go/ui 导入 ui。
import (
"github.com/egoist/quickgui/go/native"
"github.com/egoist/quickgui/go/ui"
)#用法
func RadioGroupExample() *ui.Element {
value, setValue := ui.CreateSignal("system")
group := ui.NewRadioGroup(ui.RadioGroupProps{Value: func() *string {
current := value()
return ¤t
}, OnValueChange: func(next string, _ *native.Event) {
setValue(next)
}})
options := make([]*ui.Element, 0, 3)
for _, value := range []string{"light", "dark", "system"} {
radio := ui.NewRadio().Value(value)
options = append(options, radio.Root().Children(
radio.Indicator(),
ui.Text(value),
))
}
return group.Root().Children(options)
}#结构
radioGroup.Root
#API 参考
展开条目查看说明和完整签名。短横线表示声明中未记录默认值。
NewRadioGroup
查看源码ui.NewRadioGroup(props ...RadioGroupProps) *RadioGroupComponentNewRadioGroup declares a RadioGroup instance. Optional props provide initial settings.
Reffunc(*native.Node)—
Receives the retained native node after construction. Keep imperative work in event or lifecycle callbacks.
func(*native.Node)查看源码Styleany—
Reusable layout, typography, color, and interaction-state styles. Build with ui.Style() and compose with Merge.
any查看源码ChildrenPartChildren—
Content mounted inside the component. Compound child callbacks run after the parent context exists.
PartChildren查看源码Disabledany—
Prevents activation and exposes the disabled state to accessibility. Compound parts inherit a disabled root.
any查看源码Rolestring—
FocusOnPointerany—
Groupany—
AriaLabelany—
TabIndex*float64—
Controls sequential keyboard focus order. Omit to retain the component’s default focus behavior.
*float64查看源码OnClickfunc(*native.Event)—
Called after QuickGUI resolves an activation, including supported keyboard activation.
func(*native.Event)查看源码OnDoubleClickfunc(*native.Event)—
OnContextMenufunc(*native.Event)—
OnPointerfunc(*native.Event)—
OnMouseEnterfunc(*native.Event)—
OnMouseLeavefunc(*native.Event)—
OnMouseDownfunc(*native.Event)—
OnMouseUpfunc(*native.Event)—
OnKeyDownfunc(*native.Event)—
OnKeyUpfunc(*native.Event)—
OnFocusfunc(*native.Event)—
OnBlurfunc(*native.Event)—
Valuefunc() *string—
The current controlled value. Update application state from the change callback to accept a new value.
func() *string查看源码DefaultValuestring—
Initial value for uncontrolled state. Use Value when the application should own subsequent changes.
string查看源码OnValueChangefunc(string, *native.Event)—
Reports an accepted value change. Use the callback payload to update controlled state.
func(string, *native.Event)查看源码ReadOnlybool—
Requiredbool—
RadioGroup.Disabled
查看源码radioGroup.Disabled(value any) *RadioGroupComponentPrevents activation and exposes the disabled state to accessibility. Compound parts inherit a disabled root.
RadioGroup.Value
查看源码radioGroup.Value(value any) *RadioGroupComponentThe current controlled value. Update application state from the change callback to accept a new value.
RadioGroup.DefaultValue
查看源码radioGroup.DefaultValue(value string) *RadioGroupComponentInitial value for uncontrolled state. Use Value when the application should own subsequent changes.
RadioGroup.OnValueChange
查看源码radioGroup.OnValueChange(value func(string, *native.Event)) *RadioGroupComponentReports an accepted value change. Use the callback payload to update controlled state.
RadioGroup.ReadOnly
查看源码radioGroup.ReadOnly(value bool) *RadioGroupComponentPreserves the current value while keeping the control available for focus and inspection.
RadioGroup.Required
查看源码radioGroup.Required(value bool) *RadioGroupComponentMarks the control as required for validation and accessibility.
RadioGroup.Root
查看源码radioGroup.Root() *ElementConfigures root for this part. The declared type and source define the accepted value.
Element
查看源码part.Child(content).Style(style)Every part returns a fluent element. Strings, numbers, elements, and deferred child factories compose directly.
ChildChild(child any) *Element—
Child appends content and returns this element. Content can be an element, native node, scalar, accessor, or node-returning construction callback.
Child(child any) *Element查看源码ChildrenChildren(children ...any) *Element—
Children appends multiple children in order without replacing existing content. It also accepts []any, []*Element, and []*native.Node slices as arguments. Read the retained child nodes through element.Node.Children.
Children(children ...any) *Element查看源码StyleStyle(style StyleBuilder) *Element—
Style merges a reusable style. Scalar accessors retain independent native bindings.
Style(style StyleBuilder) *Element查看源码OnClickOnClick(handler func()) *Element—
RefRef(handler func(*native.Node)) *Element—
Ref exposes the native handle once at this point in the declaration chain.
Ref(handler func(*native.Node)) *Element查看源码