⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 gcanvas.java

📁 J2ME初学者必作的CANVAS练习
💻 JAVA
字号:
import javax.microedition.lcdui.*;
import java.io.*;

public class GCanvas extends Canvas {
static Image image1;
static Image image2;
static Image image3;
static Image image4;
static Image image5;

private int curSlide = 6;
 
 public void keyPressed(int keyCode) {
    // 将物理按键代码转换为逻辑游戏按键代码
    int action = getGameAction(keyCode);
    switch (action) {
      case FIRE://确认健
        if (--curSlide < 0)
          curSlide = 6;
        repaint();//重新绘制整个Canvas
        break;
      }
  }

  public void paint(Graphics g) {
    // 填充背景
    g.setColor(255, 255, 255);  // White
    g.fillRect(0, 0, getWidth(), getHeight());
    
switch (curSlide) {

case 0:    //图片显示
    g.setColor(0,0,0);
    g.fillRect(0, 0, getWidth(), getHeight());     
    if (image5 == null) {
	  try {// 从MIDlet资源中加载图片
		image5 = Image.createImage("/5.png");
//文字
           g.setColor(255,255,255);  //白色
    String s2 = "结束了!";  //a string is added to it
    Font f2 = Font.getFont(Font.FACE_MONOSPACE,Font.STYLE_BOLD,Font.SIZE_LARGE);
    g.setFont(f2);//set font
    g.drawString(s2,120,250,Graphics.BOTTOM | Graphics.HCENTER);
	  } catch (Exception e){//未找到图片文件
		g.setColor(0);
		g.drawString("加载图片错误!", 10, 10, 
	                 Graphics.TOP |Graphics.LEFT);
		return;		}
	}
	// 显示图片
	g.drawImage(image5, getWidth()/2, getHeight()/2,
		  Graphics.VCENTER | Graphics.HCENTER); break;



case 1:    //图片显示
    g.setColor(0,0,0);
    g.fillRect(0, 0, getWidth(), getHeight());     
    if (image4 == null) {
	  try {// 从MIDlet资源中加载图片
		image4 = Image.createImage("/4.png");
	  } catch (Exception e){//未找到图片文件
		g.setColor(0);
		g.drawString("加载图片错误!", 10, 10, 
	                 Graphics.TOP |Graphics.LEFT);
		return;		}
	}
	// 显示图片
	g.drawImage(image4, getWidth()/2, getHeight()/2,
		  Graphics.VCENTER | Graphics.HCENTER); break;


case 2:    //图片显示
    g.setColor(0,0,0);
    g.fillRect(0, 0, getWidth(), getHeight());     
    if (image3 == null) {
	  try {// 从MIDlet资源中加载图片
		image3 = Image.createImage("/3.png");
	  } catch (Exception e){//未找到图片文件
		g.setColor(0);
		g.drawString("加载图片错误!", 10, 10, 
	                 Graphics.TOP |Graphics.LEFT);
		return;		}
	}
	// 显示图片
	g.drawImage(image3, getWidth()/2, getHeight()/2,
		  Graphics.VCENTER | Graphics.HCENTER); break;



case 3:    //图片显示
    g.setColor(0,0,0);
    g.fillRect(0, 0, getWidth(), getHeight());     
    if (image2 == null) {
	  try {// 从MIDlet资源中加载图片
		image2 = Image.createImage("/2.png");
	  } catch (Exception e){//未找到图片文件
		g.setColor(0);
		g.drawString("加载图片错误!", 10, 10, 
	                 Graphics.TOP |Graphics.LEFT);
		return;		}
	}
	// 显示图片
	g.drawImage(image2, getWidth()/2, getHeight()/2,
		  Graphics.VCENTER | Graphics.HCENTER); break;


case 4:    //图片显示
    g.setColor(0,0,0);
    g.fillRect(0, 0, getWidth(), getHeight());    
    
    if (image1 == null) {
	  try {// 从MIDlet资源中加载图片
		image1 = Image.createImage("/1.png");
	  } catch (Exception e){//未找到图片文件
		g.setColor(0);
		g.drawString("加载图片错误!", 10, 10, 
	                 Graphics.TOP |Graphics.LEFT);
		return;		}
	}
	// 显示图片
	g.drawImage(image1, getWidth()/2, getHeight()/2,
		  Graphics.VCENTER | Graphics.HCENTER); break;



   case 5: //第二个图
          g.setColor(255,255,255);
          g.fillRect(0,0,getWidth(),getHeight());
          //煤球身体
          g.setColor(0,0,0);
          g.fillArc(60,50,100,100,0,360);
          //眼睛
          g.setColor(255,255,255);
          g.fillArc(80,70,20,20,0,360);
          g.setColor(255,255,255);
          g.fillArc(120,70,20,20,0,360);
		  //眼珠
          g.setColor(0,0,0);
          g.fillArc(86,80,7,7,0,360);
          g.setColor(0,0,0);
          g.fillArc(127,80,7,7,0,360);
 //嘴巴
          g.setColor(255,0,0);
          g.fillArc(80,75,60,60,180,180);
//文字
           g.setColor(0,0,0);  //black
    String s1 = "继续按确认键可以看到兔斯基图片哦!";  //a string is added to it
    Font f1 = Font.getFont(Font.FACE_MONOSPACE,Font.STYLE_UNDERLINED,Font.SIZE_MEDIUM);
    g.setFont(f1);//set font
    g.drawString(s1,120,200,Graphics.BOTTOM | Graphics.HCENTER);
          break;
 
 case 6://第一个娃娃图
	 
 // 清理画布
    g.setColor(167, 221, 237);  // 设置背景的颜色
    g.fillRect(0, 0, getWidth(), getHeight()*4/5);//填涂背景色
    g.setColor(0,120,0); 
    g.fillRect(0, getHeight()*4/5, getWidth(), getHeight());
 

//arm
g.setColor(0, 0, 0);  //make one eye White
    g.drawArc(68, 166,29, 49, 180, 180);
g.setColor(255, 255,255);  //make one eye White
    g.fillArc(68, 166,29, 48, 180, 180);

g.setColor(0, 0, 0);  //make one eye White
    g.drawArc(66, 100, 160, 160, 285, 20);
g.setColor(255, 255, 255);  //make one eye White
    g.fillArc(66, 100, 160, 160, 285, 20);

//body
g.setColor(0, 0, 0);    // Black
    g.drawArc(-28,-16, 300, 300, 245, 50);
g.setColor(249, 176, 192);  //红色的衣服
    g.fillArc(-28, -16, 300, 300, 245, 50);

	g.setColor(255, 255, 255);  //make one eye White
    g.fillArc(98, 166,45, 48, 180, 180);

    //领子
    g.setColor(255, 114, 105);  
    g.fillArc(92, 168, 30, 30, 180, 180);
    g.setColor(255, 114, 105);  
    g.fillArc(118, 168, 30, 30, 180, 180);

    // 娃娃的头发
    g.setColor(0, 0, 0);  //黑色头发
    g.fillArc(45, 90, 150, 100, 0, 360);

    // 娃娃的脸
    g.setColor(252, 254, 216);  //肉色 
    g.fillArc(68, 130, 100, 60, 0, 360);

     //  娃娃的头帘儿
    g.setColor(0, 0, 0);  
    g.fillRect(70,130,94,20);

    //娃娃的头发1
    g.setColor(0, 0, 0);  
    g.fillArc(95, 58, 50, 35, 0, 360);
    //娃娃的头发2
    g.setColor(0, 0, 0);  
    g.fillArc(95, 43, 40, 30, 0, 360);
    //娃娃的头发3
    g.setColor(0, 0, 0);  
    g.fillArc(100, 40, 40, 35, 0, 360);
    //娃娃的头发4
    g.setColor(0, 0, 0);  
    g.fillArc(100, 33, 30, 35, 0, 360);
   //  娃娃的头绳儿
    g.setColor(255, 114, 105);  //make the cravat red
    g.fillRoundRect(105,83,32,10,6,12);

	//两只眼睛 
    g.setColor(0, 0, 0);    // Black
    g.drawArc(80, 155, 28, 12, 0, 360);
    g.setColor(255, 255, 255);  //Fill one eye with  White
    g.fillArc(80, 155, 28, 12, 0, 360);    

    g.setColor(0, 0, 0);    // Black
    g.drawArc(130, 155, 28, 12, 0, 360);
    g.setColor(255, 255, 255);  
    g.fillArc(130, 155, 28, 12, 0, 360);  

    //两个眼珠
    g.setColor(0, 0, 0);    // Black
    g.fillArc(141, 161, 7, 7, 0, 360);
    
    g.setColor(0, 0, 0);    // Black
    g.fillArc(90, 161, 7, 7, 0, 360);
  
   //  鼻子
    g.setColor(0, 0, 0); 
    g.drawArc(116, 164, 8, 6 , 180, 180);

   //  嘴巴
    g.setColor(255, 0, 0); 
    g.fillArc(105, 158, 30,30,180,180);
   
      // hands
    g.setColor(0, 0, 0);    // Black
    g.drawArc(68, 175, 20, 20, 0, 360);
    g.setColor(252, 254, 214);  //make one eye White
    g.fillArc(68, 175, 20, 20, 0, 360);

    g.setColor(0, 0, 0);    // Black
    g.drawArc(172, 235, 20, 20, 0, 360);
    g.setColor(252, 254, 214);  //make one eye White
    g.fillArc(172, 235, 20, 20, 0, 360);

    g.setColor(0,0,0);  //black
    String s = "My Girl~ Sonya";  //a string is added to it
    Font f = Font.getFont(Font.FACE_MONOSPACE,Font.STYLE_PLAIN,Font.SIZE_LARGE);
    g.setFont(f);//set font
    g.drawString(s,60,30,Graphics.BOTTOM | Graphics.HCENTER);break;
   

  
  }
}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -