本文へスキップ

Table

ヘッダー、行、セルのパーツを持つ仮想化テーブルコレクションです。

デモを読み込み中…

#インポート

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.Root
  • table.Header
  • table.Row
  • table.Cell

#API リファレンス

項目を展開すると説明と完全なシグネチャが表示されます。ダッシュは宣言に既定値が記載されていないことを示します。

ui.NewTable(props ...TableRootProps) *TableComponent

NewTable 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—

Accessibility role override. Prefer the component’s built-in semantics.

string
ソースを見る
FocusOnPointerany—

Whether a pointer press moves keyboard focus to the control.

any
ソースを見る
Groupany—

Names this element as a group for descendant interaction-state styling.

any
ソースを見る
AriaLabelany—

Accessible name, especially for icon-only controls or controls without a visible label.

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

Callback for double click. The signature below lists the event payload.

func(*native.Event)
ソースを見る
OnContextMenufunc(*native.Event)—

Callback for context menu. The signature below lists the event payload.

func(*native.Event)
ソースを見る
OnPointerfunc(*native.Event)—

Callback for pointer. The signature below lists the event payload.

func(*native.Event)
ソースを見る
OnMouseEnterfunc(*native.Event)—

Callback for mouse enter. The signature below lists the event payload.

func(*native.Event)
ソースを見る
OnMouseLeavefunc(*native.Event)—

Callback for mouse leave. The signature below lists the event payload.

func(*native.Event)
ソースを見る
OnMouseDownfunc(*native.Event)—

Callback for mouse down. The signature below lists the event payload.

func(*native.Event)
ソースを見る
OnMouseUpfunc(*native.Event)—

Callback for mouse up. The signature below lists the event payload.

func(*native.Event)
ソースを見る
OnKeyDownfunc(*native.Event)—

Callback for key down. The signature below lists the event payload.

func(*native.Event)
ソースを見る
OnKeyUpfunc(*native.Event)—

Callback for key up. The signature below lists the event payload.

func(*native.Event)
ソースを見る
OnFocusfunc(*native.Event)—

Callback for focus. The signature below lists the event payload.

func(*native.Event)
ソースを見る
OnBlurfunc(*native.Event)—

Callback for blur. The signature below lists the event payload.

func(*native.Event)
ソースを見る
Columnsfunc() []TableColumnDeclaration—

Column declarations for the virtual table.

func() []TableColumnDeclaration
ソースを見る
RowCountfunc() float64—

Total logical row count.

func() float64
ソースを見る
RowHeightany—

Logical height of each virtualized row.

any
ソースを見る
HeaderHeightany—

Height reserved for the table’s header row, in logical pixels.

any
ソースを見る
SelectionModestring—

Allows single or multiple table selection.

string
ソースを見る
Selectionfunc() []TableRowRange—

Controlled selection for a table, native picker, or color control.

func() []TableRowRange
ソースを見る
Sortfunc() *TableSortState—

Current table sort configuration.

func() *TableSortState
ソースを見る
Editingfunc() *TableCell—

Controlled editing state of the table cell.

func() *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)—

Reports the selected native picker option or color.

func([]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) *TableComponent

Prevents activation and exposes the disabled state to accessibility. Compound parts inherit a disabled root.

Table.Columns

ソースを見る
table.Columns(value any) *TableComponent

Column declarations for the virtual table.

Table.RowCount

ソースを見る
table.RowCount(value any) *TableComponent

Total logical row count.

Table.RowHeight

ソースを見る
table.RowHeight(value any) *TableComponent

Logical height of each virtualized row.

Table.HeaderHeight

ソースを見る
table.HeaderHeight(value any) *TableComponent

Height reserved for the table’s header row, in logical pixels.

Table.SelectionMode

ソースを見る
table.SelectionMode(value string) *TableComponent

Allows single or multiple table selection.

Table.Selection

ソースを見る
table.Selection(value any) *TableComponent

Controlled selection for a table, native picker, or color control.

table.Sort(value any) *TableComponent

Current table sort configuration.

Table.Editing

ソースを見る
table.Editing(value any) *TableComponent

Controlled editing state of the table cell.

Table.OnVisibleRangeChange

ソースを見る
table.OnVisibleRangeChange(value func(VisibleRange, *native.Event)) *TableComponent

Callback for visible range change. The signature below lists the event payload.

Table.OnSelectionChange

ソースを見る
table.OnSelectionChange(value func([]TableRowRange, *native.Event)) *TableComponent

Reports the selected native picker option or color.

Table.OnSortChange

ソースを見る
table.OnSortChange(value func(*TableSortState, *native.Event)) *TableComponent

Callback for sort change. The signature below lists the event payload.

Table.OnActiveCellChange

ソースを見る
table.OnActiveCellChange(value func(*TableCell, *native.Event)) *TableComponent

Callback for active cell change. The signature below lists the event payload.

Table.OnColumnResize

ソースを見る
table.OnColumnResize(value func([]ColumnWidth, *native.Event)) *TableComponent

Callback for column resize. The signature below lists the event payload.

Table.OnColumnReorder

ソースを見る
table.OnColumnReorder(value func([]string, *native.Event)) *TableComponent

Callback for column reorder. The signature below lists the event payload.

Table.OnEditEnd

ソースを見る
table.OnEditEnd(value func(TableEditEndDetails, *native.Event)) *TableComponent

Callback for edit end. The signature below lists the event payload.

Table.OnActivate

ソースを見る
table.OnActivate(value func(TableCell, *native.Event)) *TableComponent

Callback for activate. The signature below lists the event payload.

table.Root() *Element

Configures root for this part. The declared type and source define the accepted value.

Table.Header

ソースを見る
table.Header(options ...TableHeaderProps) *Element

Configures 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—

Accessibility role override. Prefer the component’s built-in semantics.

string
ソースを見る
FocusOnPointerany—

Whether a pointer press moves keyboard focus to the control.

any
ソースを見る
Groupany—

Names this element as a group for descendant interaction-state styling.

any
ソースを見る
AriaLabelany—

Accessible name, especially for icon-only controls or controls without a visible label.

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

Callback for double click. The signature below lists the event payload.

func(*native.Event)
ソースを見る
OnContextMenufunc(*native.Event)—

Callback for context menu. The signature below lists the event payload.

func(*native.Event)
ソースを見る
OnPointerfunc(*native.Event)—

Callback for pointer. The signature below lists the event payload.

func(*native.Event)
ソースを見る
OnMouseEnterfunc(*native.Event)—

Callback for mouse enter. The signature below lists the event payload.

func(*native.Event)
ソースを見る
OnMouseLeavefunc(*native.Event)—

Callback for mouse leave. The signature below lists the event payload.

func(*native.Event)
ソースを見る
OnMouseDownfunc(*native.Event)—

Callback for mouse down. The signature below lists the event payload.

func(*native.Event)
ソースを見る
OnMouseUpfunc(*native.Event)—

Callback for mouse up. The signature below lists the event payload.

func(*native.Event)
ソースを見る
OnKeyDownfunc(*native.Event)—

Callback for key down. The signature below lists the event payload.

func(*native.Event)
ソースを見る
OnKeyUpfunc(*native.Event)—

Callback for key up. The signature below lists the event payload.

func(*native.Event)
ソースを見る
OnFocusfunc(*native.Event)—

Callback for focus. The signature below lists the event payload.

func(*native.Event)
ソースを見る
OnBlurfunc(*native.Event)—

Callback for blur. The signature below lists the event payload.

func(*native.Event)
ソースを見る
Columnstring—

Identifies the table column associated with this part.

string
ソースを見る
table.Row(options ...TableRowProps) *Element

Configures 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—

Accessibility role override. Prefer the component’s built-in semantics.

string
ソースを見る
FocusOnPointerany—

Whether a pointer press moves keyboard focus to the control.

any
ソースを見る
Groupany—

Names this element as a group for descendant interaction-state styling.

any
ソースを見る
AriaLabelany—

Accessible name, especially for icon-only controls or controls without a visible label.

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

Callback for double click. The signature below lists the event payload.

func(*native.Event)
ソースを見る
OnContextMenufunc(*native.Event)—

Callback for context menu. The signature below lists the event payload.

func(*native.Event)
ソースを見る
OnPointerfunc(*native.Event)—

Callback for pointer. The signature below lists the event payload.

func(*native.Event)
ソースを見る
OnMouseEnterfunc(*native.Event)—

Callback for mouse enter. The signature below lists the event payload.

func(*native.Event)
ソースを見る
OnMouseLeavefunc(*native.Event)—

Callback for mouse leave. The signature below lists the event payload.

func(*native.Event)
ソースを見る
OnMouseDownfunc(*native.Event)—

Callback for mouse down. The signature below lists the event payload.

func(*native.Event)
ソースを見る
OnMouseUpfunc(*native.Event)—

Callback for mouse up. The signature below lists the event payload.

func(*native.Event)
ソースを見る
OnKeyDownfunc(*native.Event)—

Callback for key down. The signature below lists the event payload.

func(*native.Event)
ソースを見る
OnKeyUpfunc(*native.Event)—

Callback for key up. The signature below lists the event payload.

func(*native.Event)
ソースを見る
OnFocusfunc(*native.Event)—

Callback for focus. The signature below lists the event payload.

func(*native.Event)
ソースを見る
OnBlurfunc(*native.Event)—

Callback for blur. The signature below lists the event payload.

func(*native.Event)
ソースを見る
Indexany—

Zero-based index associated with this repeated part.

any
ソースを見る
table.Cell(options ...TableCellProps) *Element

Configures 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—

Accessibility role override. Prefer the component’s built-in semantics.

string
ソースを見る
FocusOnPointerany—

Whether a pointer press moves keyboard focus to the control.

any
ソースを見る
Groupany—

Names this element as a group for descendant interaction-state styling.

any
ソースを見る
AriaLabelany—

Accessible name, especially for icon-only controls or controls without a visible label.

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

Callback for double click. The signature below lists the event payload.

func(*native.Event)
ソースを見る
OnContextMenufunc(*native.Event)—

Callback for context menu. The signature below lists the event payload.

func(*native.Event)
ソースを見る
OnPointerfunc(*native.Event)—

Callback for pointer. The signature below lists the event payload.

func(*native.Event)
ソースを見る
OnMouseEnterfunc(*native.Event)—

Callback for mouse enter. The signature below lists the event payload.

func(*native.Event)
ソースを見る
OnMouseLeavefunc(*native.Event)—

Callback for mouse leave. The signature below lists the event payload.

func(*native.Event)
ソースを見る
OnMouseDownfunc(*native.Event)—

Callback for mouse down. The signature below lists the event payload.

func(*native.Event)
ソースを見る
OnMouseUpfunc(*native.Event)—

Callback for mouse up. The signature below lists the event payload.

func(*native.Event)
ソースを見る
OnKeyDownfunc(*native.Event)—

Callback for key down. The signature below lists the event payload.

func(*native.Event)
ソースを見る
OnKeyUpfunc(*native.Event)—

Callback for key up. The signature below lists the event payload.

func(*native.Event)
ソースを見る
OnFocusfunc(*native.Event)—

Callback for focus. The signature below lists the event payload.

func(*native.Event)
ソースを見る
OnBlurfunc(*native.Event)—

Callback for blur. The signature below lists the event payload.

func(*native.Event)
ソースを見る
Columnstring—

Identifies the table column associated with this part.

string
ソースを見る
Index*float64—

Zero-based index associated with this repeated part.

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

OnClick handles a click without an unused event parameter.

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