Foros del Web » Programación para mayores de 30 ;) » C/C++ »

[SOLUCIONADO] Qt. Borrar filas no consecutivas

Estas en el tema de Qt. Borrar filas no consecutivas en el foro de C/C++ en Foros del Web. Bueno, otra vez preguntando sobre el tema modelo-vista. Mi duda ahora es cómo borrar filas no consecutivas, ya que la función removeRows pide una fila ...
  #1 (permalink)  
Antiguo 24/03/2015, 04:56
 
Fecha de Ingreso: septiembre-2010
Mensajes: 494
Antigüedad: 13 años, 7 meses
Puntos: 10
Qt. Borrar filas no consecutivas

Bueno, otra vez preguntando sobre el tema modelo-vista.

Mi duda ahora es cómo borrar filas no consecutivas, ya que la función removeRows pide una fila inicial y luego la cantidad de filas consecutivas que habrán de ser borradas.

Por ahora lo he resuelto así:
Parto de una lista de int con las filas a eliminar:

Esta fila se rellena en el evento:
Código C++:
Ver original
  1. --------------------------------------------
  2. if (evento->key() == Qt::Key_Delete)
  3.     {
  4.         QList <int> listaFilasParaEliminar;
  5.         for (int i=0;i<modelo->rowCount(QModelIndex());i++)
  6.         {
  7.             if (seleccion->isRowSelected(i,QModelIndex()))
  8.             {
  9.                 listaFilasParaEliminar.push_back(i);
  10.             }
  11.         }
  12. eliminar(listaFilasParaEliminar);
  13.     }

Y llamo a la función
Código C++:
Ver original
  1. eliminar(const QList<int> &Lista)

La cual va borrando las filas de una en una:
Código C++:
Ver original
  1. ---------------------------
  2. int fila;
  3.          foreach (fila,Lista)
  4.          {
  5.              modelo->removeRows(fila, 1,QModelIndex());
  6.          }
  7. ---------------------------

Esto funciona, pero claro, lo suyo es que vaya cogiendo los rangos de filas consecutivas, pero no sé cómo se hace.

Saludos y gracias!
__________________
Mi calculadora en Qt
  #2 (permalink)  
Antiguo 24/03/2015, 05:32
 
Fecha de Ingreso: octubre-2014
Ubicación: Madrid
Mensajes: 1.212
Antigüedad: 9 años, 7 meses
Puntos: 204
Respuesta: Qt. Borrar filas no consecutivas

Lamento decirte que no hay un método al que le puedas pasar una lista de filas para que las borre.
  #3 (permalink)  
Antiguo 24/03/2015, 05:40
 
Fecha de Ingreso: septiembre-2010
Mensajes: 494
Antigüedad: 13 años, 7 meses
Puntos: 10
Respuesta: Qt. Borrar filas no consecutivas

Gracias eferion.
Pues daré por buena mi solución.
Saludos!
__________________
Mi calculadora en Qt

Etiquetas: filas, funcion, int, lista
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 07:31.