J2ME游戏“数独”开发详解(二)

  Logo动画演示完毕之后,程序重新调用 Sudoku将画面跳转到 Menu, Menu为用户提供了一个可选的菜单,如图:

        用户可以通过“手指”来选择想学择的选项,被选择的选项的字体会变为红色。主要代码如下:
g.setColor(255, 255, 255);
        g.setColor(44, 142, 164);
        g.fillRect(0, 0, this.getWidth(), this.getHeight());
        g.drawImage(title, (getWidth() - title.getWidth()) / 2, 0, Graphics.TOP
                | Graphics.LEFT);
        g.drawImage(selimage, this.getWidth() / 2 - 55, this.getHeight() / 2
                + 30 + sel * 20, Graphics.TOP | Graphics.HCENTER);
        for (int i = 0; i < menu.length; i++) {
            g.setFont(font);
            if (i == sel) {
                g.setColor(255, 0, 0);
            } else {
                g.setColor(243, 245, 49);
            }
            g.drawString(menu[i], this.getWidth() / 2, this.getHeight() / 2
                    + 30 + i * 20, Graphics.TOP | Graphics.HCENTER);
            paint(g);
            flushGraphics();
    当选择游戏开始之后,就可以进行游戏了。
    从画面可以看出,最上方有个计时器,和最高分记录。最高分是根据时间得来的,也就是说完成游戏花的时间越少得分也就越高。因为“数独”的排列组合有很多种,为了使是游戏结果唯一,所以在随机的一些格子里面添加了数字,当然唯一的结果存储在了一个数组当中,用于最后判断玩家是否得出了正确的结果。注意上面的红方块,数字只能在红色方块里添加。那么“数独”是如何产生的呢?其实是调用了 Sudo 这个类,它能够随机产生一个“数独"的二维数组,然后存储在numberarray[][]当中。
    好了,先说到这吧,源代码已在《J2ME游戏“数独”开发详解(一)》中添加。等有时间再说说 分数记录的存储和计时器的应用。

你可能感兴趣的:(游戏,职场,j2me,数独,休闲)