如何在Canvas中添加垂直滚动条?

时间:2011-11-30 10:00:55

标签: java-me canvas scrollbar lcdui

我正在使用Canvas开发Java ME应用程序。 Canvas上显示的详细信息非常丰富,因此我需要向下滚动屏幕以查看更多详细信息。

但是如何在Canvas上添加垂直滚动条?

2 个答案:

答案 0 :(得分:2)

我认为滚动条应该在paint方法中绘制。并且在单击滚动条的箭头时实现keyReleased方法。要实施scrolling,我更愿意致电repaint();,我将使用paint或其他类型的私有boolean管理variable方法。

答案 1 :(得分:0)

将画布视为源,将滚动条视为目标,使用以下公式查找滚动条位置

Target point X co-ordinate: tX = taX + ((tW * (sX - saX)) / sW)

Target point Y co-ordinate: tY = taY - ((tH * (saY - sY)) / sH)

saX : Source axis start X coordinate

saY : Source axis start Y coordinate

sW : Souce Width

sH : Source Height

taX : Target axis start X coordinate

taY : Target axis start Y coordinate

tW : Target Width

tH : Target Height

目标高度将是画布的高度。您必须将滚动条绘制为最顶层的元素。