解决J2ME开发中的连续按键问题[5]

[入库:2006年2月23日] [更新:2007年3月24日]

本文简介:

    private void right()
    {
        if (px <= getWidth())
        {
            px++;
        }
        buttonPressed = "RIGHT";
        repaint();
    }

    public void run()
    {
        while (true)
        {
            if (leftPressed)
            {
                left();
            }
            if (rightPressed)
            {
                right();
            }

            try
            {
                Thread.sleep(50);
            } catch (InterruptedException e)
            {
                e.printStackTrace();
            }
        }

    }

    public void paint(Graphics g)
    {
        g.setColor(0xFFFFFF);
        g.fillRect(0, 0, getWidth(), getHeight());
        g.setColor(0x000000);

        g.drawString(buttonPressed, 20, 20, Graphics.LEFT | Graphics.TOP);
        g.drawString("J2ME", px, py, Graphics.HCENTER | Graphics.TOP);

    }

    public void keyReleased(int keyCode)
    {
        int action = getGameAction(keyCode);

        switch (action)
        {
        case LEFT:
            leftPressed = false;
            buttonPressed = "";
            break;

        case RIGHT:
            rightPressed = false;
            buttonPressed = "";
            break;
        default:
            break;
        }
        repaint();

    }

    public void keyPressed(int keyCode)
    {
        int action = getGameAction(keyCode);

        switch (action)
        {

        case LEFT:
            left();
            leftPressed = true;
            break;

        case RIGHT:
            right();
            rightPressed = true;
            break;

        default:
            break;

        }
        repaint();

本文关键:解决J2ME开发中的连续按键问题
 

本站最佳浏览方式为 分辨率 1024x768 IE 6.0(或更高版本的 IE浏览器)

go top