关于off_screen的问题

pguard 2005-09-08 03:20:01
...
public class GameDisplay extends GameCanvas{
Graphics g;
public GameDisplay(){
super(false);
g=getGraphics();
printBoard();
}

private void printBoard(){
g.setColor(255,255,255);
g.fillRect(0,0,getWidth(),getHeight());
g.setColor(0,0,0);
g.drawLine(5,5,5,5);
//this.flushGraphics(); <--- 为何屏幕会画出线条,我并没有将off_screen的内容显示出来
}
}

根据书上的解释,继承了GameCanvas的对象,getGraphics()得到的都是off_screen,并不是
在手机屏幕上显示给用户看到的,要用flushGraphics()这个方法把off_screen内容画在屏幕
上用户才看到,但上面我并没调用flushGraphics(),线条却画在屏幕上了,为何?
...全文
164 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
贝壳鱼 2005-09-14
  • 打赏
  • 举报
回复
错,收回上面的话。
刚才写了一个程序测试了一下,不管是用全局的Graphics 还是 paint()中的Graphics 来画,不用flushGraphcs() 都是可以画出图象的
贝壳鱼 2005-09-14
  • 打赏
  • 举报
回复
TO:k7sem(J2ME区委副主任)

在类中我定义的是一个全局的变量Graphics g;,下边直接使用为何不可?
-------------------------------------------------------------------
就是说啊,你画图用的是全局那个Graphics g ,不是你 getGraphics()得到的。所以不用flushGraphics 也能画出来。只是不是缓冲的
pguard 2005-09-12
  • 打赏
  • 举报
回复
TO:prok(好地都让猪拱了)

没有用paint()
pguard 2005-09-12
  • 打赏
  • 举报
回复
TO:k7sem(J2ME区委副主任)

在类中我定义的是一个全局的变量Graphics g;,下边直接使用为何不可?
pguard 2005-09-09
  • 打赏
  • 举报
回复
up
LuckyBall 2005-09-09
  • 打赏
  • 举报
回复
up
prok 2005-09-09
  • 打赏
  • 举报
回复
你写paint函数了吗?
贝壳鱼 2005-09-09
  • 打赏
  • 举报
回复
g ------根本没有传到 printBoard() 的内部。 你怎么能确定 g=getGraphics(); 就是画图的那个Graphics对象呢。


13,100

社区成员

发帖
与我相关
我的任务
社区描述
Java J2ME
社区管理员
  • J2ME社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧