如何为SWT浏览器窗口小部件实现放置目标

ide*_*lee 5 browser swt drag-and-drop

如何为SWT浏览器小部件实现放置目标?将Browser实例作为DropTarget构造函数的参数会导致不会通知任何已注册的drop listener.

    Browser browser = new Browser(parent, SWT.NONE); 
    int operations = DND.DROP_MOVE | DND.DROP_COPY | DND.DROP_DEFAULT; 
    DropTarget target = new DropTarget(browser, operations); 
    target.setTransfer(...) 
    DropTargetListener listener = ...; 
    target.addDropListener(listener); 
Run Code Online (Sandbox Code Playgroud)

谢谢,亨利

Fab*_*ndl 0

我认为这不容易实现,因为浏览器也是本机小部件的集合,请参阅:http ://dev.eclipse.org/mhonarc/lists/platform-swt-dev/msg04523.html

我想到了两种解决方法:

  • 使用 HTML5 进行,有 DND 支持
  • 黑客解决方案:在 MouseOver 上创建一个透明的、显示不可见的外壳,该外壳直接位于浏览器上方并接受 Drop。