繁体   English   中英

J2ME游戏画布

[英]J2ME Game Canvas

在J2ME中,一次只能显示一个屏幕或画布。 屏幕内部可以有多个对象(文本字段,表单等),而画布只能容纳游戏扫描。

问题是:是否可以在一个画布中放置多个游戏画布? 我试图同时显示两个,一个在顶部,一个在底部。 我想要重新粉刷底部画布而不重新涂抹顶部。

先感谢您! 任何形式的帮助将不胜感激! :)

不,您一次只能显示一个Canvas或GameCanvas对象。

但是:如果您要求有两个Canvas对象,因为您需要彼此独立地更新屏幕的两个部分,您可以使用2个Image对象来完成。

只需使用Image.getGraphics()获取每个Image的Graphics对象; 然后你可以绘制到每个图像上。 最后在画布上绘制两个图像(或者只是其中一个,如果您只想更新屏幕的一部分)。

使用GameCanvas的示例:

Image topImage = Image.createImage(width, height);
Image bottomImage = Image.createImage(width, height);
Graphics topG = topImage.getGraphics();
Graphics bottomG = bottomImage.getGraphics();
Graphics g = getGraphics(); // Get graphics of the GameCanvas

drawStuffOn-topG();
drawStuffOn-bottomG();

g.drawImage(topImage, 0, 0, g.TOP|g.LEFT);
g.drawImage(bottomImage, 0, halfScreenHeight, g.TOP|g.LEFT);

flushGraphics();

不,您只使用一个画布,但只重绘已更改的位

Canvas.repaint(int x, int y, int w, int h);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM