我正在做一个名为“电磁场曲棍球”的个人项目(以科罗拉多大学 PhET 网站上的电场曲棍球命名)。我决定将应用程序移植到我网站上的 java 小程序。
问题是小程序不接受任何鼠标输入,我什至不知道它是否启动,因为当我切换选项卡并返回时图形消失了。我知道小程序正在查找代码和代码库,因为小程序初始化并正确渲染了图形的第一帧,然后什么也不做。奇特的是小程序在 Eclipse 的 Appletviewer 中运行良好。我怀疑罪魁祸首是 start() 方法,我认为它没有在浏览器中执行。
如果有帮助,您可以在http://leo.scruffohio.net/programs/EMFieldHockey.html找到小程序。我在 Linux 上使用 Firefox 和 Mac 上的 Safari 对其进行了测试,因此它不是系统相关问题。请注意,当您运行 jar 文件(位于http://leo.scruffohio.net/programs/java/thebombzen-emhockey-dev3.jar)时,应用程序可以工作。
我的小程序代码很简单:
public class EMFieldHockeyApplet extends JApplet {
private static final long serialVersionUID = 8145754973708683690L;
@Override
public void init() {
this.setBackground(Color.WHITE);
this.setLayout(new GridLayout());
this.add(ElectromagneticFieldHockey.getInstance());
// that's the main application JPanel
}
@Override
public void start() {
ElectromagneticFieldHockey.start();
}
@Override
public void stop(){
ElectromagneticFieldHockey.stop();
}
}