TableViewDelegate QML Type
Un delegado que se puede asignar a un TableView. Más...
| Import Statement: | import QtQuick.Controls |
| Since: | Qt 6.9 |
| Inherits: | |
| Inherited By: |
Propiedades
Descripción detallada

Un TableViewDelegate es un delegado que puede asignarse a la delegate property de un TableView. Renderiza cada celda de la tabla en la vista utilizando el estilo de la aplicación.
TableView { anchors.fill: parent delegate: TableViewDelegate {} // model: yourModel }
TableViewDelegate hereda de ItemDelegate, lo que significa que se compone de dos elementos: un background y un contentItem.
La posición del contentItem se controla con padding.
Interacción con punteros
TableViewDelegate hereda ItemDelegate. Esto significa que emitirá señales como clicked cuando el usuario haga clic en el delegado. Puede conectarse a esta señal para implementar funciones específicas de la aplicación.
Sin embargo, la API ItemDelegate no ofrece información sobre la posición del clic ni sobre qué modificadores se están manteniendo. Si esto es necesario, un mejor enfoque sería utilizar manejadores de puntero, por ejemplo:
TableView { id: tableView delegate: TableViewDelegate { TapHandler { acceptedButtons: Qt.RightButton onTapped: someContextMenu.open() } TapHandler { acceptedModifiers: Qt.ControlModifier onTapped: tableView.doSomethingToCell(row, column) } } }
Nota: Si desea desactivar el comportamiento por defecto que se produce cuando el usuario hace clic en el delegado (como cambiar el índice actual), puede establecer pointerNavigationEnabled a false.
Edición de celdas en la tabla
TableViewDelegate tiene asignado por defecto edit delegate. Si TableView tiene configurado edit triggers, y el model tiene soporte para editing model items, entonces el usuario puede activar cualquiera de los activadores de edición para editar el texto de la celda de la tabla current.
El delegado de edición por defecto utilizará Qt.EditRole para leer y escribir datos en model. Si necesitas utilizar otro rol, o tienes otras necesidades fuera de lo que ofrece el delegado de edición por defecto, siempre puedes asignar tu propio delegado a TableView.editDelegate.
Véase también Personalización de TableViewDelegate y TableView.
Documentación de Propiedades
current : bool
Esta propiedad indica si el delegado representa o no a current index en selection model.
editing : bool
Esta propiedad mantiene si el delegado está siendo edited.
selected : bool
Esta propiedad indica si el delegado representa o no a selected index en selection model.
tableView : TableView
Esta propiedad apunta al TableView que contiene el elemento delegado.
© 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.