Qt: перетаскивание внутри QListWidget не работает - PullRequest
1 голос
/ 15 апреля 2020

Я переопределил QListWidget, чтобы принимать отбрасывания файлов. Я просто хочу использовать перетаскивание для создания списка файлов.

Вот моя реализация. cpp для него:

#include "dropenabledlistwidget.h"

DropEnabledListWidget::DropEnabledListWidget(QWidget *parent):QListWidget(parent)
{
    this->setAcceptDrops(true);
    ///this->setDragDropMode(QAbstractItemView::DragDrop);
    qDebug() << "Aca toy";
}


void DropEnabledListWidget::dragEnterEvent(QDragEnterEvent *e)
{
    if (e->mimeData()->hasUrls()) {
        e->acceptProposedAction();
    }
}


void DropEnabledListWidget::dropEvent(QDropEvent *event){
    qDebug() << "Drop Event";
    if (event->mimeData()->hasUrls()){
        QList<QUrl> urls = event->mimeData()->urls();
        for (qint32 i = 0; i < urls.size(); i++){
            qDebug() << urls.at(i).path();
        }
    }
}

Когда я пытаюсь перетащить элемент в это, я получаю маленький красный круг с sla sh в качестве курсора, и ничего не происходит. Но из примеров, которые я видел, я делаю все, что должен.

Есть идеи?

...