我使用以下代码将 ScrollPane 中的 Applet 包含到我的 Eclipse 插件视图中:
@Override
public void createPartControl(Composite parent) {
composite = new Composite(parent, SWT.EMBEDDED);
final Frame frame = SWT_AWT.new_Frame(composite);
frame.setLayout(new BorderLayout());
Panel panel = new Panel();
panel.setSize(WIDTH, HEIGHT);
pap = new ProcessingEmbedded2();
ScrollPane pane = new ScrollPane(ScrollPane.SCROLLBARS_AS_NEEDED);
panel.setLayout(new BorderLayout());
panel.add(pap, BorderLayout.CENTER);
frame.add(pane, BorderLayout.CENTER);
pane.add(panel);
}
public class ProcessingEmbedded2 extends Applet {
}
这在 Eclipse RPC/For 插件开发人员中运行良好,但现在我尝试在另一个 Eclipse 客户端中运行该插件。那里的 ScrollPane 会导致插件冻结整个客户端。我确定它是 ScrollPane,因为如果我删除这部分代码(即,我将小程序直接添加到没有 ScrollPane 的面板中),插件就会正常运行。有人知道导致这种冻结的问题吗?