【发布时间】:2014-04-01 14:32:14
【问题描述】:
我有一个 SWT 应用程序,我使用画布来显示图像、视频和 PDF 文件。用户可以将任何媒体类型拖到画布上。我使用浏览器对象仅显示 PDF。当我显示完 PDF 后,我只需处理浏览器。有时这可行,但有时浏览器不会消失,我的画布上会出现一个僵尸浏览器窗口。
为什么会出现僵尸浏览器??
我的画布类有一个draw方法,类似这样的
public void draw(GC gc) {
if (mediaType == PDF) {
if (browser == null)
browser = new Browser(this, SWT.NONE);
}
else if (browser != null) {
browser.dispose();
browser = null;
}
// etc, etc
}
所以我只在需要时创建浏览器。
【问题讨论】: