LVRS Storyboard Frame

components/control/Table.svx

Path: components/control/Table.svx

Last modified:

테이블

위치: qml/components/control/display/Table.qml

Table는 컴팩트한 읽기 전용 데이터 표시를 위해 TableHeader와 반복되는 TableRow 대리자를 구성합니다.

목적

  • 고정된 높이의 조밀한 표 형식 디스플레이를 제공합니다.
  • 헤더와 행에 대한 배열/목록 모델 스타일 입력을 허용합니다.

API

데이터:

  • headerCellItems(선호)
  • headerColumns
  • rows

레이아웃:

  • rowHeight
  • cellWidth(0는 자동 너비를 의미함)

시각적:

  • backgroundColor
  • borderColor, borderWidth
  • headerTextColor
  • cellTextColor
  • dividerColor(행 구분선 기준선에 대한 레거시 별칭)
  • rowDividerColor
  • headerSeparatorColor

도우미 방법:

  • rowAt(index)
  • columnCountForRow(rowEntry)
  • autoCellWidth(rowEntry)

사용법

import LVRS 1.0 as LV

LV.Table {
    headerCellItems: [
        { label: "Name" },
        { label: "State" },
        { label: "Owner" }
    ]
    rows: [
        [{ text: "Renderer" }, { text: "Active" }, { text: "Core" }],
        [{ text: "Metrics" }, { text: "Paused" }, { text: "Ops" }]
    ]
}

동작 원리

  • 헤더 소스는 먼저 headerCellItems에서 확인한 다음 headerColumns에서 확인합니다.
  • 행 항목은 TableRow.cellItems로 전달되고 각 셀은 TableCellItem.itemData 로 전달됩니다.
  • 헤더와 행 수는 JS 배열과 모델과 유사한 객체 모두에 대해 해결됩니다.
  • 행 위임은 고정된 cellWidth 또는 자동 적합 수식에서 너비를 계산합니다.
  • 테이블 컨테이너는 콘텐츠를 잘라내고 내부 구분선 계약을 시행합니다.

고급 예: 개체 행

import LVRS 1.0 as LV

LV.Table {
    headerCellItems: [
        { label: "Service" },
        { label: "State" },
        { label: "Owner" }
    ]
    rows: [
        [{ text: "Renderer" }, { text: "Active" }, { text: "Core" }],
        [{ text: "Input" }, { text: "Idle" }, { text: "UX" }]
    ]
}

셀 텍스트 대체 경로는 label/text/title 개체 키를 지원합니다.