Colonnes
ColumnDef
Chaque colonne est définie par un ColumnDef :
Créer des colonnes
Offsets de colonnes
ColumnOffsets précalcule la position x du bord gauche de chaque colonne pour
un accès O(1) lors du rendu et un hit-testing en O(log n) :
Les offsets sont automatiquement recalculés lorsque les colonnes changent (redimensionnement, déplacement, etc.).
Redimensionnement
Faites glisser le séparateur de colonne pour redimensionner :
Ajustement automatique au contenu
Double-cliquez sur le séparateur de colonne pour ajuster automatiquement :
L'ajustement automatique parcourt toutes les lignes visibles et l'en-tête pour trouver le contenu le plus large, puis dimensionne la colonne en conséquence.
Déplacement de colonnes
Glissez-déposez pour réordonner les colonnes :
Cela réordonne physiquement le vecteur columns et recalcule les offsets.
Les déplacements de colonnes sont enregistrés dans l'historique d'annulation.
Épinglage de colonnes
Épinglez les premières colonnes pour qu'elles restent visibles lors du défilement horizontal :
Les colonnes épinglées sont rendues par-dessus la zone de défilement avec un
fond opaque. La largeur épinglée est donnée par model.pinned_width().