作者note100 (0c0)
看板Python
标题Re: [问题] 直接拖曳进QT视窗?
时间Sun Oct 16 16:35:06 2022
这里是找到的实作解答:
https://learndataanalysis.org/implement-files-and-urls-to-listbox-widget-drag-and-drop-function-pyqt5-tutorial/#google_vignette
https://youtu.be/KVEIW2htw0A
技术文件这里,有提到几个一定会需要的几个类别,但是实作里面也只有3个
dropEvent,dragMoveEvent,dragEnterEvent
https://doc.qt.io/qt-6/dnd.html#drag-and-drop-classes
技术文件里面
https://doc.qt.io/qt-6/dnd.html#dropping 也只有提到
your reimplementations of dragMoveEvent() and dropEvent()
并没有描述到,实作答案里面的dragEnterEvent
有的话也只有以下link有描述,带是标题是Rectangles
https://doc.qt.io/qt-6/dnd.html#drop-rectangles
https://doc.qt.io/qt-6/qdropevent.html#setDropAction
这里的setDropAction 好像只是大概描述,方法的使用方法,也跟实作答案并无关系
技术文件上的
https://doc.qt.io/qt-6/dnd.html#dropping
acceptProposedAction();
跟答案的
event.accept()
完全不相干….
实作解答里面,有注解了此部分 #
https://doc.qt.io/qt-5/qurl.html
但是似乎跟上面一样,也只是方法的描述而已
因为小妹才疏学浅,想问一下各位大大,
1.这里是否有技术文件的实作阅读法?不然看了技术文件,根本做不出来
2.真的有可能藉由技术文件实作吗? 这篇的答案,看起来就知道不是由技术文件得来的。
3.查了python 的技术文件也只有
https://docs.python.org/3/library/tkinter.dnd.html 也与实作无关
4.stackoverflow 找了也只有这个 ,与实作无关
https://stackoverflow.com/questions/6969110/drag-drop-file-onto-python-script
5.void Window::dragEnterEvent(QDragEnterEvent *event),里面还有分Window:: ? 跟
void Window:: ,-> 箭头 = . 的意思?
6.Window::Window(QWidget *parent)里面的 :: 是甚麽意思?
7.官方文档根本看不出来是python语法?感觉void....还比较像是C# 语法?
8.我google非常久,都找不到,有手把手,官方文档到实作的教学,或是教学官方文档的细
节?
谢谢!
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 101.137.223.90 (台湾)
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/Python/M.1665909316.A.6CC.html
※ 编辑: note100 (101.137.163.58 台湾), 10/16/2022 21:10:22
1F:→ Hsins: 就 dropEvent 拿 mimeData()而已,不知道为什麽搞这麽复杂 10/16 21:50
2F:推 panex0845: 不知道你在干麽 python qt5 drag file第一个就是了 10/17 04:04
3F:→ lycantrope: 就setAcceptDrops後选event抓mimeData应该没这麽复杂 10/17 08:37