
正文
QT窗口拖拽功能简单应用(处理dragEnterEvent和dropEvent事件,不同的事件有不同的信息,比如mimeData)
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
void dragEnterEvent(QDragEnterEvent *event);
void dropEvent(QDropEvent *event);ui->lineEdit->setAcceptDrops(false);
this->setAcceptDrops(true);// 拖拽处理函数
void MainWindow::dragEnterEvent(QDragEnterEvent *event)
{
#if 1
// 判断拖拽文件类型,文件名 接收该动作
if (event->mimeData()->hasFormat("text/uri-list")) {
event->acceptProposedAction();
}
#endif
}// 拖拽释放处理函数
void MainWindow::dropEvent(QDropEvent *event)
{
#if 1
QList<QUrl> urls = event->mimeData()->urls();
if (urls.isEmpty()) {
return;
} QString fileName = urls.first().toLocalFile();
if (fileName.isEmpty()) {
return;
} ui->lineEdit->setText(fileName);
#endif}
http://blog.csdn.net/emdfans/article/details/45672679







