Sto creando una lista ordinabile in Qt. Il codice funziona perfettamente bene per lo scorrimento verso il basso, ma quando ho alcuni problemi ottenendo l'elemento trascinabile dopo ho scorrere l'elenco verso il basso. Ho aggiunto un po 'di test case screenshot per una migliore comprensioneQListWidget Trascina dopo aver scovato l'elenco
Screen1 http://imageshack.us/a/img13/2791/56842367.png Screen2 http://imageshack.us/a/img819/8662/87542336.png Screen3 http://imageshack.us/a/img24/761/97993758.png Screen4 http://imageshack.us/a/img825/1172/93877106.png
Ebbene questo è il test del codice caso
#include <QtGui>
int main(int argc, char **argv)
{
QApplication app(argc, argv);
QListWidget *listWidget = new QListWidget;
for(int i=0;i<100;++i){
listWidget->addItem("SongOne");
listWidget->addItem("SongTwo");
listWidget->addItem("SongThree");
listWidget->addItem("SongFour");
listWidget->addItem("SongFive");
}
listWidget->setDragDropMode(QAbstractItemView::InternalMove);
listWidget->setDragEnabled(true);
listWidget->setAcceptDrops(true);
listWidget->setDropIndicatorShown(true);
listWidget->viewport()->setAcceptDrops(true);
listWidget->setSelectionMode(QAbstractItemView::SingleSelection);
listWidget->show();
app.exec();
delete listWidget;
return 0;
}
Thankz per aver dedicato del tempo a leggere il mio post. Aiutami se hai qualche suggerimento su quello che sto perdendo. Penso che mi manchi impostare alcune proprietà. Nel programma principale (non nel codice di test), ho provato a riscrivere lo dragMoveEvent
e qualche altro metodo, ma non lo uso.
il problema qui non è il trascinamento della selezione ma il QRect creato durante il trascinamento della selezione. Nella Figura Due il Qrect si crea ma non in Figure Four
dispiace Alessandro il problema qui non è il drag and drop, ma il QRect che si crea mentre si fa Drag and Drop – sobingt