我慢慢地感觉到了各种让Java做我需要的事情的方法,但是当我尝试编写我自己的画布类课程时,我遇到了一个问题.
在我的类中,我调用createImage(myMemoryImageSource);和repaint();,试图从我的applet的主要"run“方法中删除复杂性。
尽管包含了java.awt.*、java.awt.image.*和java.applet.*,但除非从Applet扩展,否则该类不会编译。我的类实际上只是一个画布类,所以我希望它不要扩展Applet。
我是缺少了一个重要的包含,还是我对如何实现自己的画布类有一个严重的误解?
发布于 2011-12-29 20:36:31
您只需从画布上扩展您的类即可。
发布于 2011-12-29 19:10:56
如果您不打算使用子类,那么您将需要一个可以调用上述方法的实例。此外,按照惯例,如果要自定义组件,最好将其子类。
示例-
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);
.
.
.
}
}https://stackoverflow.com/questions/8672253
复制相似问题