如何在j2me画布中滚动



我创建了一个示例应用程序,希望在其中进行滚动,但无法实现所需的输出。

我已经尝试了以下代码内部绘制方法>>>>

g.translate(x,y);

并在keydown和keyup事件中传递变量"y"的值。

有人能帮我做这件事吗?

最简单的方法(尽管占用大量内存)是使用MutableImage,并用负y坐标绘制它。

可变图像只是一个新的图像(w,h)
然后使用myImage.getGraphics()获取其Graphics上下文,并使用该Graphics对象进行绘制。它充当屏幕外的缓冲区。

比在油漆(图形g),你调用:

g.drawImage(0,y,...);

在每个绘制系统调用上循环递减y
(不要阻止绘制!-每个调用都是一帧,并且您正在进行逐帧动画
从另一个线程执行动画循环,在那里减少y,然后调用repaint()和sleep)。

您是否尝试过在keyUP中递减Y的值并调用repaint()方法,也使用keyDown执行相同操作,但现在Y的值将递减并调用repaint()方法。

使用g.translate(x, changingYvalue);

试试这个。

我认为滚动条应该在paint方法内部绘制。当单击滚动条的箭头时,您实现了keyReleased方法。为了实现scrolling,我更喜欢调用repaint();,并且我将使用布尔值或某种其他类型的专用variable来管理paint方法。

相关内容

  • 没有找到相关文章

最新更新