【问题标题】:How to write Scrollable for Table in j2me by canvas?如何通过canvas在j2me中为Table编写Scrollable?
【发布时间】:2011-09-21 17:02:57
【问题描述】:

现在我尝试用 Canvas 绘制一个表格,但我有一个问题,我的表格没有可滚动的。

如何编写一些代码来帮助我的表格可以滚动?

我的代码在这里

import javax.microedition.lcdui.Canvas;
import javax.microedition.lcdui.Graphics;

/**
 *
 * @author Kency
 */
public class TableCanvas extends Canvas{

    private int w,h;
    private int pad;
    private int cols = 3;
    private int rows = 10;

    public TableCanvas() {
        w = getWidth();
        h = getHeight();


    }




    protected void paint(Graphics g) {
        g.setColor(148, 178, 255);
        g.fillRect(0, 0, w, h);
        for(int i =0 ; i <= cols ; i++){
            g.setColor(0x00D0D0D0);

            for(int j = 0 ; j <= rows ; j++){
                g.drawLine(0, j *  h/rows, cols * w, j* h/rows);
                g.drawLine(i * w/cols, 0, i * w/cols, w * rows);
            }
        }



    }

}

【问题讨论】:

    标签: java-me midp lcdui


    【解决方案1】:

    对于您摘录中的代码,最直接的方法可能是使用Graphics#translate API。

    还必须处理按键/指针事件以允许用户滚动。例如,当按键对应于游戏动作右/左/上/下时,您分别滚动。当指针被拖动时,您会找到方向,然后再次分别滚动

    绘画滚动条也需要“手工”代码。

    另一种选择是使用 3rd 方库,例如 LWUITJ2ME Polish

    【讨论】:

    • 亲爱的 gnat 你能给我一些关于按键或指针事件来处理滚动的想法吗?谢谢!
    • @MYE 我在我的答案中添加了解释“当按键对应于游戏动作右/左/上/下时,您滚动...”等
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-01-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多