快速业务通道

使用NetBeans进行J2ME开发(三):低级图形用户界面Canvas - 编程入门网

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-06-20
for(int i=0; i<13; i++){        try{          images[i] = Image.createImage("/" + String.valueOf(i) + ".png");        }catch(Exception e){          //不做处理        }      }    }    public void clearBackground(Graphics g){      int color = g.getColor();      g.setColor(0xcccccc);      g.fillRect(0,0,getWidth(),getHeight());      g.setColor(color);    }    public void paint(Graphics g){      //清除背景      clearBackground(g);      //绘制网格      g.setColor(0x000000);      g.drawRect(1,3,236,284);      g.drawLine(1,74,237,74);      g.drawLine(1,145,178,145);      g.drawLine(1,216,178,216);      g.drawLine(60,3,60,287);      g.drawLine(119,3,119,287);      g.drawLine(178,3,178,287);      //根据pics数组和images数组的内容绘图到网格中      for(int i=0; i<4; i++){        for(int j=0; j<3; j++){          g.drawImage(images[pics[i][j]],j*59+2,i*71+4,Graphics.TOP|Graphics.LEFT);        }      }      g.drawImage(images[pics[0][3]],179,4,Graphics.TOP|Graphics.LEFT);      //绘制所用的步骤      g.drawString("步数:",182,140,Graphics.TOP|Graphics.LEFT);      g.setColor(0xffffff);      g.fillRect(182,158,50,18);      g.setColor(0xff0000);      g.drawString(String.valueOf(step),187,160,Graphics.TOP|Graphics.LEFT);    }    public void keyPressed(int keyCode){      switch(getGameAction(keyCode)){        case RIGHT:          right();          break;        case LEFT:          left();          break;        case UP:          up();          break;        case DOWN:          down();          break;      }     repaint();    }    public void up(){      if(spaceY < 3){        pics[spaceY][spaceX] = pics[spaceY+1][spaceX];        pics[spaceY+1][spaceX] = 0;        spaceY ++;        step ++;      }    }    public void down(){      if(spaceY >0){        pics[spaceY][spaceX] = pics[spaceY-1][spaceX];        pics[spaceY-1][spaceX] = 0;        spaceY --;        step ++;      }    }    public void left(){      int rightLimit = 2;      if(spaceY == 0){        rightLimit = 3;      }      if(spaceX < rightLimit){        pics[spaceY][spaceX] = pics[spaceY][spaceX+1];        pics[spaceY][spaceX+1] = 0;        spaceX ++;        step ++;      }    }    public void right(){      if(spaceX > 0 ){        pics[spaceY][spaceX] = pics[spaceY][spaceX -1];        pics[spaceY][spaceX-1] = 0;        spaceX --;        step ++;      }    } }

使用NetBeans进行J2ME开发(三):低级图形用户界面Canvas(5)

时间:2011-01-18 海边沫沫

运行项目,得到如下的效果,使用上下左右四个键可以移动图片:

使用NetBeans进行J2ME开发(三):低级图形用户界面Canvas - 编程入门网

游戏过程中的截图:

使用NetBeans进行J2ME开发(三):低级图形用户界面Canvas - 编程入门网

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号