dropEvent non exécuté dans QListView
Bonjour, apres quelques recherches sur le net, et sur ce forum, je me permets de poster mon problème.
J'essaye de réaliser un drag'n drop basique entre un QTreeView et un QListView.
Voici mon code :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
| // pour le QTreeView,
DiskExplorer::DiskExplorer(QWidget* parent)
: QTreeView(parent)
{
setDragEnabled(true);
...
}
// pour le QListView
Archiver::Archiver(QWidget* parent)
: QListWidget(parent)
{
setAcceptDrops(true);
}
void Archiver::dragEnterEvent(QDragEnterEvent *event)
{
if (event->mimeData()->hasFormat("text/uri-list"))
{
qDebug() << "entering...";
event->acceptProposedAction();
}
event->ignore();
}
void Archiver::dropEvent(QDropEvent *event)
{
qDebug() << "ok !";
} |
Mon problème est que je recois bien l'évènement dragEnterEvent, mais le dropEvent n'est pas appelé. Bizarre, non ? J'ai pourtant repris les exemples de Qt.
De plus, j'ai le symbole "interdit" au drag dans la zone du QListView.
Merci pour vos éventuelles futures réponses.