最好用 electron ,用 rust 也行,我看系统原生是没有提供文件拖拽的 api 的
![]() |
1
Xheldon 1 天前
神奇的需求,你要干什么?
|
2
skyyan 1 天前
是要监测 文件夹下每个文件的大小 变动 还是监测文件数量
|
![]() |
3
cheng6563 1 天前
Windows 的 QQ 就有检测,估计就是 hook explorer.exe 呗。
|
![]() |
4
randomName OP @Xheldon 你看豆包 mac 客户端,你拖动文件的时候,他就会在顶部提示“把文档拖到这里”
|
![]() |
5
randomName OP @skyyan 不是,是要监测拖动事件,类似豆包 mac 客户端,你拖动文件的时候,他就会在顶部提示“把文档拖到这里”
|
6
Rickkkkkkk 1 天前
感觉你提了个 a/b 问题。
|
![]() |
7
Sentimental 1 天前
豆包客户端应该是用的 electron 吧,js 监听 drag 事件就行
|
![]() |
8
Xheldon 1 天前
@randomName 哦 我理解错了,我以为你要检测某个文件夹下的某些个文件是否拖动过位置,然后要怎么着之类的。
Electron 有监听 onDrag 拖拽事件,https://www.electronjs.org/zh/docs/latest/tutorial/native-file-drag-drop |
![]() |
9
randomName OP @Sentimental 不能的,electron 那个你得拖到 browserwindow 里才能监听到。我需要的是直接在文件夹里拖动文件的时候就监听到。
|
![]() |
10
randomName OP @Xheldon 不能的,electron 那个你得拖到 browserwindow 里才能监听到。我需要的是直接在文件夹里拖动文件的时候就监听到。
|
![]() |
11
hatsuyuki 21 小时 48 分钟前
electron 可以监听 dragenter 事件,tauri 也可以监听 tauri://drag-enter
如果你的需求并不是监听用户拖拽文件到你的程序,而是监听用户在文件资源管理器内部的拖动行为(虽然不知道为啥有这么奇怪的需求),那你就只能 hook explorer.exe 了 |
![]() |
12
randomName OP @hatsuyuki 前因后果是,我有一个可以拖动的悬浮窗(类似豆包),因为他有很多不规则元素,所以我需要默认设置鼠标穿透,然后鼠标 hover 上去的时候,设置鼠标不穿透。然后因为默认鼠标穿透,所以文件拖动过去的时候,是触发不了 dragenter 的。
然后关于我这个需求,还有个原因,就是希望像豆包客户端( mac )一样,用户一拖动文件,就提示“拖到我这里来”。引导用户拖动到我的悬浮窗。 hook explorer.exe 能展开说说吗,我没搜到相关的内容,客户端原生我比较新手,求指教 |
![]() |
13
treblex 6 小时 58 分钟前
跑个题,豆包应该是自己编译的 chrome 吧,还是说 electron 可以实现这种效果?
|
![]() |
14
treblex 6 小时 40 分钟前
|