Calendar
支持键盘导航的月历网格,用于选择单个日期。
正在加载交互演示…
func CalendarExample(weeks [][]string) *ui.Element {
calendar := ui.NewCalendar().DefaultValue("2026-09-03")
weekElements := make([]*ui.Element, 0, len(weeks))
for index, week := range weeks {
dayElements := make([]*ui.Element, 0, len(week))
for _, day := range week {
dayElements = append(dayElements, calendar.Day(day).Child(day))
}
weekElements = append(weekElements, calendar.Week(index).Children(dayElements))
}
return calendar.Root().Children(weekElements)
}#导入
从 github.com/egoist/quickgui/go/ui 导入 ui。
import (
"github.com/egoist/quickgui/go/ui"
)#用法
func CalendarExample(weeks [][]string) *ui.Element {
calendar := ui.NewCalendar().DefaultValue("2026-09-03")
weekElements := make([]*ui.Element, 0, len(weeks))
for index, week := range weeks {
dayElements := make([]*ui.Element, 0, len(week))
for _, day := range week {
dayElements = append(dayElements, calendar.Day(day).Child(day))
}
weekElements = append(weekElements, calendar.Week(index).Children(dayElements))
}
return calendar.Root().Children(weekElements)
}#结构
calendar.Rootcalendar.Weekcalendar.Day
#API 参考
展开条目查看说明和完整签名。短横线表示声明中未记录默认值。
NewCalendar
查看源码ui.NewCalendar(props ...CalendarRootProps) *CalendarComponentNewCalendar declares a Calendar 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查看源码Minstring—
Maxstring—
OnValueChangefunc(*string, *native.Event)—
Reports an accepted value change. Use the callback payload to update controlled state.
func(*string, *native.Event)查看源码FirstWeekdayany—
OnFocusChangefunc(string, *native.Event)—
Callback for focus change. The signature below lists the event payload.
func(string, *native.Event)查看源码OnMonthChangefunc(string, *native.Event)—
Callback for month change. The signature below lists the event payload.
func(string, *native.Event)查看源码Calendar.Disabled
查看源码calendar.Disabled(value any) *CalendarComponentPrevents activation and exposes the disabled state to accessibility. Compound parts inherit a disabled root.
Calendar.Value
查看源码calendar.Value(value any) *CalendarComponentThe current controlled value. Update application state from the change callback to accept a new value.
Calendar.DefaultValue
查看源码calendar.DefaultValue(value string) *CalendarComponentInitial value for uncontrolled state. Use Value when the application should own subsequent changes.
Calendar.Min
查看源码calendar.Min(value string) *CalendarComponentLower bound of the accepted value.
Calendar.Max
查看源码calendar.Max(value string) *CalendarComponentUpper bound of the accepted value.
Calendar.OnValueChange
查看源码calendar.OnValueChange(value func(*string, *native.Event)) *CalendarComponentReports an accepted value change. Use the callback payload to update controlled state.
Calendar.FirstWeekday
查看源码calendar.FirstWeekday(value any) *CalendarComponentFirst weekday column, where Monday is 0 and Sunday is 6.
Calendar.OnFocusChange
查看源码calendar.OnFocusChange(value func(string, *native.Event)) *CalendarComponentCallback for focus change. The signature below lists the event payload.
Calendar.OnMonthChange
查看源码calendar.OnMonthChange(value func(string, *native.Event)) *CalendarComponentCallback for month change. The signature below lists the event payload.
Calendar.Root
查看源码calendar.Root() *ElementConfigures root for this part. The declared type and source define the accepted value.
Calendar.Week
查看源码calendar.Week(value int, options ...CalendarWeekProps) *ElementConfigures week for this part. The declared type and source define the accepted value.
Calendar.WeekWith
查看源码calendar.WeekWith(props CalendarWeekProps) *ElementWeekWith supplies explicit properties for this part.
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)—
Index*int—
Calendar.Day
查看源码calendar.Day(value string, options ...CalendarDayProps) *ElementCalendar date represented by this day cell.
Calendar.DayWith
查看源码calendar.DayWith(props CalendarDayProps) *ElementDayWith supplies explicit properties for this part.
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)—
Daystring—
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查看源码