Hallo,
ich habe ein QTable in welchem der user wahlweise unterschiedliche zeilen löschen darf.
Er kann z,B auch nur Zeile 1 und 5 löschen.
Mein Problem besteht nun darin dass ich nicht einfach durch die ganze Tabelle gehen kann und alles was selektiert ist löschen darf...denn dadurch verliere ich die Konsistenz in der for-schleife...
Code:
QTable* tmp = new QTable(table->numRows(),table->numCols());
for(int i = 0; i < tmp_table->numRows();i++)
if(table->isRowSelected(i,TRUE))
table->removeRow(i);
ich habe dann als nächstes vresucht mit QMemArray zu arbeiten aber auch da ohne Erfolg:
Code:
QMemArray<int> arr(table->numRows());
QMemArray<int> tmp_arr = arr.copy();
for(uint i =0; i < tmp_arr.size(); i++)
{
if(table->isRowSelected(i,TRUE)) arr[i] = i;
else arr.truncate(i);
}
table->removeRows(arr);
Nun weiß ich nicht mehr so genau weiter...ich könnte mir einen Hash sozusagen aufbauen mit true/false flags mit den Zeilennummern als key aber ich glaube das geht doch bestimmt einfacher oder nicht ???
Danke für eure Ideen...
Lesezeichen