Sur cette page

TableViewDelegate QML Type

Un délégué qui peut être assigné à un TableView. Plus....

Import Statement: import QtQuick.Controls
Since: Qt 6.9
Inherits:

ItemDelegate

Inherited By:

HorizontalHeaderViewDelegate and VerticalHeaderViewDelegate

Propriétés

Description détaillée

Vue de tableau affichant des adresses à l'aide d'un délégué de vue de tableau

Un TableViewDelegate est un délégué qui peut être assigné à delegate property d'un TableView. Il rend chaque cellule du tableau dans la vue en utilisant le style de l'application.

TableView {
    anchors.fill: parent
    delegate: TableViewDelegate {}
    // model: yourModel
}

TableViewDelegate hérite de ItemDelegate, ce qui signifie qu'il est composé de deux éléments : un background et un contentItem.

La position de l'élément contentItem est contrôlée par padding.

Interaction avec les pointeurs

TableViewDelegate hérite de ItemDelegate. Cela signifie qu'il émet des signaux tels que clicked lorsque l'utilisateur clique sur le délégué. Vous pouvez vous connecter à ce signal pour mettre en œuvre une fonctionnalité spécifique à l'application.

Cependant, l'API ItemDelegate ne vous donne pas d'informations sur la position du clic, ni sur les modificateurs qui sont maintenus. Si vous avez besoin de ces informations, une meilleure approche consisterait à utiliser des gestionnaires de pointeurs, par exemple :

TableView {
    id: tableView
    delegate: TableViewDelegate {
        TapHandler {
            acceptedButtons: Qt.RightButton
            onTapped: someContextMenu.open()
        }

        TapHandler {
            acceptedModifiers: Qt.ControlModifier
            onTapped: tableView.doSomethingToCell(row, column)
        }
    }
}

Remarque : si vous souhaitez désactiver le comportement par défaut qui se produit lorsque l'utilisateur clique sur le délégué (comme la modification de l'index actuel), vous pouvez définir pointerNavigationEnabled sur false.

Modification des cellules du tableau

Le délégué TableView a une valeur par défaut de edit delegate. Si TableView est associé à edit triggers et que model prend en charge editing model items, l'utilisateur peut activer l'un des déclencheurs d'édition pour modifier le texte de la cellule de tableau current.

Le délégué d'édition par défaut utilise Qt.EditRole pour lire et écrire des données dans model. Si vous devez utiliser un autre rôle, ou si vous avez des besoins autres que ceux du délégué d'édition par défaut, vous pouvez toujours affecter votre propre délégué à TableView.editDelegate.

Voir également Personnaliser TableViewDelegate et TableView.

Documentation sur les propriétés

current : bool

Cette propriété indique si le délégué représente ou non le site current index dans le site selection model.

editing : bool

Cette propriété indique si le délégué est ou non edited.

selected : bool

Cette propriété indique si le délégué représente ou non un site selected index dans le site selection model.

tableView : TableView

Cette propriété pointe vers le site TableView qui contient l'élément délégué.

© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.