Qt 拖放;在Mac OS X上使用QDrag拖放到VLC

Qt 拖放;在Mac OS X上使用QDrag拖放到VLC,qt,drag-and-drop,vlc,Qt,Drag And Drop,Vlc,我已经使用QDrag实现了拖放。以下是相关代码: // ... // Init URL List QList<QUrl> uriList; // Add Files To URI List uriList << QUrl("file:///Users/Max/file1.avi"); uriList << QUrl("file:///Users/Max/file2.avi"); // Create Drag QDrag* drag = new QDrag

我已经使用QDrag实现了拖放。以下是相关代码:

// ...

// Init URL List
QList<QUrl> uriList;

// Add Files To URI List
uriList << QUrl("file:///Users/Max/file1.avi");
uriList << QUrl("file:///Users/Max/file2.avi");

// Create Drag
QDrag* drag = new QDrag(this);
// Create Mime Data
QMimeData* mimeData = new QMimeData;

// Set URLS
mimeData->setUrls(uriList);

// Set Mime Data
drag->setMimeData(mimeData);

// ...

// Exec Drag
Qt::DropAction dropAction = drag->exec(Qt::CopyAction | Qt::MoveAction | Qt::LinkAction);

// Check Drop Action
if (dropAction == Qt::IgnoreAction) {
    // ...
}

// ...
/。。。
//初始化URL列表
QList-uriList;
//将文件添加到URI列表
尿毒症患者(mimeData);
// ...
//执行拖动
Qt::DropAction DropAction=drag->exec(Qt::CopyAction | Qt::MoveAction | Qt::LinkAction);
//检查下降动作
if(dropAction==Qt::IgnoreAction){
// ...
}
// ...
代码在finder、Skype、Qt creator等中运行正常。。。 只有VLC似乎不接受降价

有人知道VLC是否需要额外的特殊魔法吗


提前谢谢

VLC是否接受本机DROP?是的,它确实与本机DROP一起工作。当我拖动一个文件放到vlc上时,它会在播放列表周围显示一个指示活动的低吼边框。用我的药水,它甚至没有显示出来。然而,Finder也显示出与我的滴水器类似的效果。我检查了Finder的数据,将其放入我的应用程序,它似乎和我一样使用uri列表。更新:如果播放列表中已经有其他项目,VLC似乎接受我的实现所做的删除。如果播放列表为空,则不接受。