如何从Applet制作Frame?
How to make Frame from Applet?
我有 aplet,我正在尝试用它制作简单的框架。
我应该只将 extends Apllet 更改为 extends JFrame
public class Main extends Applet {
public void init() {
}
}
我将其修复为:
public class Main extends JFrame {
public Main () {
}
public static void main (String args[]) {
Main m1 = new Main();
m1.setVisible(true);
m1.setSize(300, 300);
}
}
更新!
日食:
Exception in thread "main" java.lang.NullPointerException
at stack.WireframeViewer.<init>(WireframeViewer.java:67)
at stack.WireframeViewer.main(WireframeViewer.java:162)
这很容易。你是在正确的方式来实现这一点。从 JFrame
而不是 Applet
扩展你的 class 并像你已经做的那样添加一个 main 方法。
但是这里需要这样写:
public static void main(String args[]){
Main main = new Main();
main.setSize(300, 300);
main.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
main.setVisible(true);
main.init();
}
请注意这里的最后一个电话!您需要手动调用 init
方法,因为这对 Applet 是自动的,但对 JFrames 不是。并且这必须在 setVisible
之后完成,因为您不会在之前获得框架的 width
和 height
。
此外,您必须删除 paint
方法中的 showStatus(...)
调用,因为这是针对 Applet 的。在 JFrames 中,您需要为此添加 JLabel
或 JTextField
。
我有 aplet,我正在尝试用它制作简单的框架。 我应该只将 extends Apllet 更改为 extends JFrame
public class Main extends Applet {
public void init() {
}
}
我将其修复为:
public class Main extends JFrame {
public Main () {
}
public static void main (String args[]) {
Main m1 = new Main();
m1.setVisible(true);
m1.setSize(300, 300);
}
}
更新!
日食:
Exception in thread "main" java.lang.NullPointerException
at stack.WireframeViewer.<init>(WireframeViewer.java:67)
at stack.WireframeViewer.main(WireframeViewer.java:162)
这很容易。你是在正确的方式来实现这一点。从 JFrame
而不是 Applet
扩展你的 class 并像你已经做的那样添加一个 main 方法。
但是这里需要这样写:
public static void main(String args[]){
Main main = new Main();
main.setSize(300, 300);
main.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
main.setVisible(true);
main.init();
}
请注意这里的最后一个电话!您需要手动调用 init
方法,因为这对 Applet 是自动的,但对 JFrames 不是。并且这必须在 setVisible
之后完成,因为您不会在之前获得框架的 width
和 height
。
此外,您必须删除 paint
方法中的 showStatus(...)
调用,因为这是针对 Applet 的。在 JFrames 中,您需要为此添加 JLabel
或 JTextField
。