정리

[Qt] 파일 드래그

WooHyun 2015. 10. 8. 10:06

편리하게 파일을 불러오기 위한 수단으로 드래그하는 방법을 많이 사용한다.

Qt에서는 QWidget이라면 드래그 이벤트를 조금 수정하여 구현이 가능하다.

 

Url을 받아오는 것이 목적이라면..

Widget의 setAcceptDrops(true); 을 해주고.

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

void MyWidget::dropEvent(QDropEvent *event)
{
    if (event->mimeData()->hasUrls()) {
        foreach (QUrl url, event->mimeData()->urls()) {
            ...
        }
    }
}

이런 방식으로 가능하다.

자세한 내용을 원한다면. QMimeData 를 검색하면 자세히 나와있다.