【问题标题】:SWT Events delegate from a shell to a SWT.BrowserSWT 事件从 shell 委托给 SWT.Browser
【发布时间】:2013-01-17 14:55:43
【问题描述】:

假设您有一个SWT.Browser 并想创建一个DropTarget

我遇到的问题如下: ShellDisplay 都没有得到 drop-event,因为 browsercontrol 会消耗它。

我的想法是在浏览器顶部放置一些不可见的东西。这应该消耗事件。但是对于这种情况,似乎我必须将所有鼠标事件传递给 SWT 浏览器。

现在我被卡住了,因为我没有让通知运行。我有一个 mousemove 监听器正在运行。该 schell 上的所有事件都被捕获。

如何将此事件重新发送到浏览器 notifyListener(int type, Event e) 不适用于 SWT.Mozilla 浏览器(在 eclipse 3.4.2 中)。我知道这个 Eclipse 框架非常古老,但是那个版本是由 IBM lotus notes 9 提供的。

如何调度这些事件?

【问题讨论】:

    标签: java browser swt mozilla xulrunner


    【解决方案1】:

    您可以使用Display.post() 将事件分派给 SWT。

    【讨论】:

    • 似乎只有一个Display,所以如果发布事件,我的监听器会再次获取它们,但浏览器没有。
    • @ChristianKuetbach 似乎具有焦点的控件接收到事件。在发布 Event 之前尝试致电 browser.setFocus();browser.forceFocus();
    • 不幸的是,这并没有解决问题。这可能是有问题的,因为 SWT-Broser(实际上是 mozilla)可能无法使用焦点。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-01-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多