Как реализовать цель удаления для виджета SWT browser

#browser #swt #drag-and-drop

#браузер #swt #перетаскивание

Вопрос:

Как реализовать цель удаления для виджета SWT browser? Использование экземпляра браузера в качестве параметра DropTarget конструктора не вызывает уведомления о каких-либо зарегистрированных прослушивателях удаления.

     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); 
  

Спасибо,
Генри

Ответ №1:

Я думаю, что это нелегко, поскольку браузер также представляет собой набор собственных виджетов, см. Это: http://dev.eclipse.org/mhonarc/lists/platform-swt-dev/msg04523.html

Мне приходят на ум два обходных пути:

  • Сделайте это в HTML5, есть поддержка DND
  • Хакерское решение: при наведении курсора мыши создайте прозрачную, отобразите невидимую оболочку, которая находится прямо над браузером и принимает удаление.