0

今、キャンバスでテーブルを描画しようとしていますが、問題があります。テーブルにはスクロールできません。

テーブルをスクロールできるようにするコードを書くにはどうすればよいですか?

マイコードはこちら

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);
            }
        }



    }

}
4

1 に答える 1

0

抜粋のようなコードの場合、最も簡単な方法はおそらくGraphics#translate API を使用することです。

ユーザーがスクロールできるようにするには、キーが押された/ポインターイベントを処理する必要もあります。たとえば、キーの押下がゲーム アクションの右/左/上/下に対応する場合、それぞれスクロールします。ポインタがドラッグされると、方向を見つけて、もう一度、それぞれスクロールします

スクロールバーをペイントするには、「手作り」のコードも必要です。

別のオプションは、LWUITJ2ME Polishなどのサードパーティ ライブラリを使用することです。

于 2011-09-21T20:18:32.763 に答える