Saltar al contenido

¿Cómo eliminar filas / filas de un qtableview en pyqt?

Solución:

el método model.removeRow (index.row ()) elimina la fila seleccionada.

model = self.model
    indices = self.tableView.selectionModel().selectedRows() 
    for index in sorted(indices):
        model.removeRow(index.row()) 

en la variable de índices obtenemos la fila seleccionada, luego borramos la fila.

Para eliminar varias filas en nuestra selección de vista de tabla:

index_list = []                                                          
for model_index in self.tableView.selectionModel().selectedRows():       
    index = QtCore.QPersistentModelIndex(model_index)         
    index_list.append(index)                                             

for index in index_list:                                      
     self.model.removeRow(index.row())                                                               

En C ++:

QModelIndexList indices = myTable->selectionModel()->selectedRows();

for (int i=indices.count()-1; i>=0; --i)
{
    QModelIndex index = indices.at(i);
    myTable->removeRow(index.row());
}

Tienes que ir de la parte inferior a la superior de la lista o tu indexación se arruinará.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)


Tags :

Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *