Checkbox
独立してスタイルできるインジケーターを持つ、二値または不定状態の選択コントロールです。
デモを読み込み中…
func CheckboxExample() *ui.Element {
checked, setChecked := ui.CreateSignal(false)
checkbox := ui.NewCheckbox(ui.CheckboxProps{Checked: func() ui.CheckedState {
return checked()
}, OnCheckedChange: func(next bool, _ *native.Event) {
setChecked(next)
}})
return checkbox.Root().Children(
checkbox.Indicator().
Width(16).Height(16).
BorderWidth(1).BorderRadius(4).BorderColor("#2563eb").
Display("flex").AlignItems("center").JustifyContent("center").
Child(ui.Show(checked, func() *ui.Element {
return ui.SVG().Value(`<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 12 12"><path d="M3 6l2 2 4-4" fill="none" stroke="#2563eb" stroke-width="1.6" stroke-linecap="round" stroke-linejoin="round"/></svg>`).Width(12).Height(12)
})),
ui.Text("Remember me"),
)
}#インポート
github.com/egoist/quickgui/go/ui から ui をインポートします。
import (
"github.com/egoist/quickgui/go/native"
"github.com/egoist/quickgui/go/ui"
)#使い方
func CheckboxExample() *ui.Element {
checked, setChecked := ui.CreateSignal(false)
checkbox := ui.NewCheckbox(ui.CheckboxProps{Checked: func() ui.CheckedState {
return checked()
}, OnCheckedChange: func(next bool, _ *native.Event) {
setChecked(next)
}})
return checkbox.Root().Children(
checkbox.Indicator().
Width(16).Height(16).
BorderWidth(1).BorderRadius(4).BorderColor("#2563eb").
Display("flex").AlignItems("center").JustifyContent("center").
Child(ui.Show(checked, func() *ui.Element {
return ui.SVG().Value(`<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 12 12"><path d="M3 6l2 2 4-4" fill="none" stroke="#2563eb" stroke-width="1.6" stroke-linecap="round" stroke-linejoin="round"/></svg>`).Width(12).Height(12)
})),
ui.Text("Remember me"),
)
}インジケーターには既定のスタイルがありません。この例では枠を保持し、選択時だけ SVG を表示します。ReadOnly: true を設定すると、フォーカスを保ちながら、ポインターやキーボード操作による値の変更を防ぎます。
#構成
checkbox.Rootcheckbox.Indicator
#API リファレンス
項目を展開すると説明と完全なシグネチャが表示されます。ダッシュは宣言に既定値が記載されていないことを示します。
NewCheckbox
ソースを見るui.NewCheckbox(props ...CheckboxProps) *CheckboxComponentNewCheckbox declares a Checkbox 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)—
Valuestring—
The current controlled value. Update application state from the change callback to accept a new value.
stringソースを見るParentbool—
ChildrenCheckedfunc() []bool—
Reads the checked states used to derive a parent checkbox’s on, off, or mixed state.
func() []boolソースを見るReadOnlybool—
Checkedfunc() CheckedState—
Controlled selection state. A checkbox also accepts the indeterminate state where supported.
func() CheckedStateソースを見るDefaultCheckedCheckedState—
OnCheckedChangefunc(bool, *native.Event)—
Checkbox.Disabled
ソースを見るcheckbox.Disabled(value any) *CheckboxComponentPrevents activation and exposes the disabled state to accessibility. Compound parts inherit a disabled root.
Checkbox.Value
ソースを見るcheckbox.Value(value string) *CheckboxComponentThe current controlled value. Update application state from the change callback to accept a new value.
Checkbox.Parent
ソースを見るcheckbox.Parent(value bool) *CheckboxComponentMarks a checkbox as a parent whose state is derived from its children.
Checkbox.ChildrenChecked
ソースを見るcheckbox.ChildrenChecked(value any) *CheckboxComponentReads the checked states used to derive a parent checkbox’s on, off, or mixed state.
Checkbox.ReadOnly
ソースを見るcheckbox.ReadOnly(value bool) *CheckboxComponentPreserves the current value while keeping the control available for focus and inspection.
Checkbox.Checked
ソースを見るcheckbox.Checked(value any) *CheckboxComponentControlled selection state. A checkbox also accepts the indeterminate state where supported.
Checkbox.DefaultChecked
ソースを見るcheckbox.DefaultChecked(value CheckedState) *CheckboxComponentInitial checked state when no controlled Checked accessor is supplied.
Checkbox.OnCheckedChange
ソースを見るcheckbox.OnCheckedChange(value func(bool, *native.Event)) *CheckboxComponentReports the next checked state after user interaction.
Checkbox.Root
ソースを見るcheckbox.Root() *ElementConfigures root for this part. The declared type and source define the accepted value.
Checkbox.Indicator
ソースを見るcheckbox.Indicator(options ...PartProps) *ElementConfigures indicator for this part. The declared type and source define the accepted value.
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)—
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ソースを見る