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ソースを見る