我正在慢慢地想办法让Java做我需要的各种方法,但是在尝试编写类似画布的类时我遇到了一个问题...
在我的班级中,我致电createImage(myMemoryImageSource);
和repaint();
,试图从我的applet的主“运行”方法中删除复杂性。
尽管包含java.awt.*
,java.awt.image.*
和java.applet.*
,但除非从 Applet 扩展,否则此类将无法编译。我的类实际上只是一个canvas类,所以我更喜欢它不扩展Applet。
我是否错过了一个重要的内容,或者我对如何实现自己的画布课程有一个严重的误解?
答案 0 :(得分:0)
如果您不打算继承子类,那么您将需要一个可以调用所述方法的实例。此外,按照惯例,如果您要自定义组件,最好将其子类化。
示例 -
final class Foo extends JFrame{
Foo(){
super("Foo Frame");
setDefaultCloseOperation(EXIT_ON_CLOSE);
.
.
.
}
}
或
final class Foo{
private final JFrame frame;
Foo(){
frame = new JFrame("Foo Frame");
frame.setDefaultCloseOperation(EXIT_ON_CLOSE);
.
.
.
}
}
答案 1 :(得分:0)
您只需要从Canvas扩展您的课程。