16
A
回答
31
超載dragEnterEvent()
和dropEvent()
在MainWindow
類,並調用setAcceptDrops()
在構造函數中:
MainWindow::MainWindow(QWidget *parent)
{
..........
setAcceptDrops(true);
}
void MainWindow::dragEnterEvent(QDragEnterEvent *e)
{
if (e->mimeData()->hasUrls()) {
e->acceptProposedAction();
}
}
void MainWindow::dropEvent(QDropEvent *e)
{
foreach (const QUrl &url, e->mimeData()->urls()) {
QString fileName = url.toLocalFile();
qDebug() << "Dropped file:" << fileName;
}
}
6
首先,檢查Qt Reference Documentation: Drag and Drop爲基礎,再看看Drag and Drop of files on QMainWindows對於技術性的東西。後者提供了一個完整的例子。
Qt也有一堆Drag and Drop examples,你可能會對Drop Site感興趣。
+0
感謝您的幫助!肯定會研究它。 – 2013-02-15 14:42:41
3
我在此鏈接中獲得了全部代碼:Drag and Drop files into your application。您可以從此頁面下載.zip。
的代碼工作完美的我,那我應該做的,使代碼工作的唯一的東西是我mainwindow.h包括:
#include <QMimeData>
這一切,我希望它能夠幫你。
相關問題
- 1. 手動添加拖放支持
- 2. 拖動文件到應用程序窗口
- 3. 將拖放組件添加到iOS應用程序
- 4. 將應用程序創建的文件拖放到資源管理器窗口
- 5. 使用WPF和數據綁定將文件拖放到應用程序窗口
- 6. 將三星多窗口支持添加到Android應用程序
- 7. 創建支持拖放的MKPinAnnotation支持像地圖應用中的拖放一樣的拖動
- 8. 將Zip文件夾中的文件拖放到我的窗口
- 9. Silverlight 4是否支持從應用程序拖放到桌面?
- 10. 使用Greasemonkey將可拖動的窗口添加到頁面
- 11. 從Outlook窗口拖放到.Net中的應用程序.EXE文件(或圖標)。
- 12. 將窗口小部件拖動到窗口將不起作用
- 13. 將word文件拖放到窗體上
- 14. 是否可以將任何文件拖放到QT應用程序中?
- 15. 文件拖放支持一個RichTextBox(.NET)
- 16. Qt拖放動畫
- 17. 將文件拖放到winform應用程序不起作用
- 18. 將某物拖放到xna窗口上?
- 19. 如何實現從qt應用程序拖放到文件系統文件夾?
- 20. 拖動窗口
- 21. NSOutlineVIew拖,放不同的窗口(相同的應用程序)
- 22. 將文件從瀏覽器拖放到桌面/應用程序
- 23. 將文件拖放到控制檯應用程序
- 24. 將n從文件系統拖放到Web應用程序
- 25. 從應用程序外部將文件拖放到QTableView中
- 26. 將多個文件拖放到沙盒應用程序
- 27. Gorm主窗口不接受拖放
- 28. 如何將NSColorPicker添加到應用程序的主窗口?
- 29. Mac應用程序 - 將文件拖放到菜單欄應用程序
- 30. NSView在拖動窗口時得到拖動的事件
感謝您承擔編寫代碼的所有痛苦! – 2013-02-15 14:43:22
不客氣,我沒有寫代碼,但是從我的源代碼拷貝過來))) – borisbn 2013-02-16 05:06:38
只需要說一下:我不得不重寫'MainWindow :: dragMoveEvent()'方法,我只是'acceptProposedAction()' '事件。否則它不適合我。 – Ancurio 2013-12-21 13:55:05