ich habe ein QTableWidget, in dem man Items mittels Drag und Drop verschieben können soll. Ich habe also das DragEnterEvent und das DropEvent reimplementiert, und darin dann jeweils den Text der angeklickten Items der Zeile zwischengespeichert und im DropEvent wieder eine neue Zeile mit Items, die den Text der alten erhalten, in das TableWidget eingefügt. Soweit funktioniert das alles, jedoch kommt es manchmal zu Fehlern, wenn ich zu schnell ein Item verscheiben möchte, was wahrscheinlich daran liegt dass das item von dem ich den text abspeichere, schon nicht mehr das ursprüngliche zu draggende item war. So sieht die Zwischenspeicherung aus:
Code: Alles auswählen
void tableWidgetClass::dragEnterEvent(QDragEnterEvent *event){
currentRow = this->row(this->itemAt(event->pos()));
source0 = this->item(currentRow,0)->text();
iconSource = this->item(currentRow,0)->icon();
source1 = this->item(currentRow,1)->text();
source2 = this->item(currentRow,2)->text();
event->acceptProposedAction();
}
Habt ihr eine Idee??