Table
虚拟化表格集合,包含表头、行和单元格部件。
正在加载交互演示…
func TableExample(rows []string) *ui.Element {
table := ui.NewTable(ui.TableRootProps{Columns: func() []ui.TableColumnDeclaration {
return []ui.TableColumnDeclaration{{ID: "name", Label: "Name", Track: "1fr", Sortable: true}}
}, RowCount: func() float64 {
return float64(len(rows))
}, RowHeight: 26, HeaderHeight: 28, PartProps: ui.PartProps{Style: ui.Style().Height(260).OverflowY("scroll")}})
children := []*ui.Element{
table.Header(ui.TableHeaderProps{Column: "name"}).Child("Name"),
}
for index, name := range rows {
children = append(children, table.Row(ui.TableRowProps{Index: index}).Child(
table.Cell(ui.TableCellProps{Column: "name"}).Child(name),
))
}
return table.Root().Children(children)
}#导入
从 github.com/egoist/quickgui/go/ui 导入 ui。
import (
"github.com/egoist/quickgui/go/ui"
)#用法
func TableExample(rows []string) *ui.Element {
table := ui.NewTable(ui.TableRootProps{Columns: func() []ui.TableColumnDeclaration {
return []ui.TableColumnDeclaration{{ID: "name", Label: "Name", Track: "1fr", Sortable: true}}
}, RowCount: func() float64 {
return float64(len(rows))
}, RowHeight: 26, HeaderHeight: 28, PartProps: ui.PartProps{Style: ui.Style().Height(260).OverflowY("scroll")}})
children := []*ui.Element{
table.Header(ui.TableHeaderProps{Column: "name"}).Child("Name"),
}
for index, name := range rows {
children = append(children, table.Row(ui.TableRowProps{Index: index}).Child(
table.Cell(ui.TableCellProps{Column: "name"}).Child(name),
))
}
return table.Root().Children(children)
}#结构
table.Roottable.Headertable.Rowtable.Cell
#API 参考
展开条目查看说明和完整签名。短横线表示声明中未记录默认值。
NewTable
查看源码ui.NewTable(props ...TableRootProps) *TableComponentNewTable declares a Table 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)—
Columnsfunc() []TableColumnDeclaration—
RowCountfunc() float64—
RowHeightany—
HeaderHeightany—
SelectionModestring—
Selectionfunc() []TableRowRange—
Sortfunc() *TableSortState—
Editingfunc() *TableCell—
OnVisibleRangeChangefunc(VisibleRange, *native.Event)—
Callback for visible range change. The signature below lists the event payload.
func(VisibleRange, *native.Event)查看源码OnSelectionChangefunc([]TableRowRange, *native.Event)—
OnSortChangefunc(*TableSortState, *native.Event)—
Callback for sort change. The signature below lists the event payload.
func(*TableSortState, *native.Event)查看源码OnActiveCellChangefunc(*TableCell, *native.Event)—
Callback for active cell change. The signature below lists the event payload.
func(*TableCell, *native.Event)查看源码OnColumnResizefunc([]ColumnWidth, *native.Event)—
Callback for column resize. The signature below lists the event payload.
func([]ColumnWidth, *native.Event)查看源码OnColumnReorderfunc([]string, *native.Event)—
Callback for column reorder. The signature below lists the event payload.
func([]string, *native.Event)查看源码OnEditEndfunc(TableEditEndDetails, *native.Event)—
Callback for edit end. The signature below lists the event payload.
func(TableEditEndDetails, *native.Event)查看源码OnActivatefunc(TableCell, *native.Event)—
Callback for activate. The signature below lists the event payload.
func(TableCell, *native.Event)查看源码Table.Disabled
查看源码table.Disabled(value any) *TableComponentPrevents activation and exposes the disabled state to accessibility. Compound parts inherit a disabled root.
Table.Columns
查看源码table.Columns(value any) *TableComponentColumn declarations for the virtual table.
Table.RowCount
查看源码table.RowCount(value any) *TableComponentTotal logical row count.
Table.RowHeight
查看源码table.RowHeight(value any) *TableComponentLogical height of each virtualized row.
Table.HeaderHeight
查看源码table.HeaderHeight(value any) *TableComponentHeight reserved for the table’s header row, in logical pixels.
Table.SelectionMode
查看源码table.SelectionMode(value string) *TableComponentAllows single or multiple table selection.
Table.Selection
查看源码table.Selection(value any) *TableComponentControlled selection for a table, native picker, or color control.
Table.Sort
查看源码table.Sort(value any) *TableComponentCurrent table sort configuration.
Table.Editing
查看源码table.Editing(value any) *TableComponentControlled editing state of the table cell.
Table.OnVisibleRangeChange
查看源码table.OnVisibleRangeChange(value func(VisibleRange, *native.Event)) *TableComponentCallback for visible range change. The signature below lists the event payload.
Table.OnSelectionChange
查看源码table.OnSelectionChange(value func([]TableRowRange, *native.Event)) *TableComponentReports the selected native picker option or color.
Table.OnSortChange
查看源码table.OnSortChange(value func(*TableSortState, *native.Event)) *TableComponentCallback for sort change. The signature below lists the event payload.
Table.OnActiveCellChange
查看源码table.OnActiveCellChange(value func(*TableCell, *native.Event)) *TableComponentCallback for active cell change. The signature below lists the event payload.
Table.OnColumnResize
查看源码table.OnColumnResize(value func([]ColumnWidth, *native.Event)) *TableComponentCallback for column resize. The signature below lists the event payload.
Table.OnColumnReorder
查看源码table.OnColumnReorder(value func([]string, *native.Event)) *TableComponentCallback for column reorder. The signature below lists the event payload.
Table.OnEditEnd
查看源码table.OnEditEnd(value func(TableEditEndDetails, *native.Event)) *TableComponentCallback for edit end. The signature below lists the event payload.
Table.OnActivate
查看源码table.OnActivate(value func(TableCell, *native.Event)) *TableComponentCallback for activate. The signature below lists the event payload.
Table.Root
查看源码table.Root() *ElementConfigures root for this part. The declared type and source define the accepted value.
Table.Header
查看源码table.Header(options ...TableHeaderProps) *ElementConfigures header 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)—
Columnstring—
Table.Row
查看源码table.Row(options ...TableRowProps) *ElementConfigures row 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)—
Indexany—
Table.Cell
查看源码table.Cell(options ...TableCellProps) *ElementConfigures cell 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)—
Columnstring—
Index*float64—
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查看源码