QT实现文件拖拽显示完整路径
void dragEnterEvent(QDragEnterEvent * e)
{
if (e->mimeData()->hasUrls())
{
FileName = e->mimeData()->urls().first().toLocalFile();// 只允许单目标拖放
if (FileName.right(3).contains(QLatin1String("bin"), Qt::CaseInsensitive) | FileName.right(3).contains(QLatin1String("hex"), Qt::CaseInsensitive))
{
e->acceptProposedAction(); // 接受本次拖入
}
else
{
e->ignore();
}
}
}
void dropEvent(QDropEvent * e)
{
if (FileName.right(3).contains(QLatin1String("hex"), Qt::CaseInsensitive))
{
ui.lineEdit_hexFilename->setText(FileName);
}
if (FileName.right(3).contains(QLatin1String("bin"), Qt::CaseInsensitive))
{
ui.lineEdit_binFilename->setText(FileName);
}
e->accept();
}