-
QCefViewTest里,有一块拖拽区域
我在尝试拖拽功能时,无法将文件拖拽到窗口里。所以,想问一下拖拽功能是否支持?如果不支持,可以怎样去实现呢 |
Beta Was this translation helpful? Give feedback.
Replies: 7 comments 2 replies
-
这是拖拽窗口的意思 |
Beta Was this translation helpful? Give feedback.
-
我尝试了一下按住这区域也不能拖动窗口,不太理解拖拽窗口的意思 |
Beta Was this translation helpful? Give feedback.
-
那么,拖拽功能有实现吗?如果没有,方便提供一些实现的思路吗 |
Beta Was this translation helpful? Give feedback.
-
那么,拖拽功能有实现吗?如果没有,方便提供一些实现的思路吗 |
Beta Was this translation helpful? Give feedback.
-
你想实现的功能叫做Drag & Drop (DND), 如果你想通过Qt框架来实现Qt窗口的DND,你需要参考: CEF在NCW模式下,已经对接了系统的DND接口,并且会通过CefDragHandler::OnDragEnter方法来告诉你当前用户有DRAG操作。 |
Beta Was this translation helpful? Give feedback.
-
不使用离屏模式,使用窗口模式,页面中的可拖动区域,按住无法拖动,麻烦能提供一些思路?离屏模式是正常的 |
Beta Was this translation helpful? Give feedback.
-
也许可以按照Qt的逻辑去做,判断按下是否属于该区域,然后进行move操作 |
Beta Was this translation helpful? Give feedback.
你想实现的功能叫做Drag & Drop (DND),
DND在每个平台/框架都有一套自己的实现
例如你通过native的Windows窗体实现DND,你需要参考:
https://learn.microsoft.com/en-us/windows/win32/shell/dragdrop
如果你想通过Qt框架来实现Qt窗口的DND,你需要参考:
https://doc.qt.io/qt-6/dnd.html
CEF在NCW模式下,已经对接了系统的DND接口,并且会通过CefDragHandler::OnDragEnter方法来告诉你当前用户有DRAG操作。
在OSR模式下,CEF没有提供任何接口,所以完全需要你自己去是实现(通过Qt感知用户的DND事件,然后传给CEF)。