能不能不在APPLET的paint中绘图(100分)

  • 主题发起人 主题发起人 kmgyl
  • 开始时间 开始时间
K

kmgyl

Unregistered / Unconfirmed
GUEST, unregistred user!
编写APPLET 的时碰到绘图问题,是否只能在PAINT()中编写(PAINT中有GRAPHICS 变量)
 
你可以先放一个画布canvas,然后覆盖canvas的paint()方法就行乐。
一般的java入门的术上都有吧。
 
paint方法是自动调用的。不在这画,你想干吗?
 
applet类好象也可以重载paint方法的...
 
我要在一个函数中用到AWT,。。但如何获得GRAPHICS 属性
 
paint是自动调用的,你不要管Graphics怎样获得。
你可以在paint里面定义需要显示的东西。调用时可以引用repaint()就行乐。
要控制打印内容自己写几个成员变量在paint里面引用就行了。
我觉得很方便啊。
 
几乎每个awt类中都有getGraphics()方法,
所以,可以这样写:
public void mypaint(){
Graphics g = myapplet.getGraphics();
g.drawLine(...);
Graphics g = mybutton.getGraphics();
g.drawLine(...);
}
这样虽然能够画出来,但是一旦程序自己调用了update,也就失去效果了...
 
的确是,不在这里面画,您在哪儿画呀
 
TO kmgyl:
请继续或结束问题
 
emildy
不会失效的,只要你重载update()函数就可以了
 
我也遇到
比如每次画背景
在paint中会效率很低
想复制一个背景,以后画上就可以了,免去重新生成所花的时间
 
编写Applet的话,paint是默认的进行调用的,
你把画图的操作放再这里就可以了。
要是想提高重绘的速度,repaint加上参数就可以了。还是很快的!
 
呵呵,我是CreateImage()新建立一个内部缓冲,画图都在这个Image上面画,只是在
Applet.Paint()中将此Image画到前景的Graphics上。
 
多人接受答案了。
 
后退
顶部