📄 showcanvas.java
字号:
import javax.microedition.lcdui.*;
import java.io.*;
import java.util.*;
public class showCanvas extends Canvas //implements Random
{
Image[] iPing;
Image ii;
Vector v ;
int radNum=1;
Object oRad=1+"";
boolean bSee = false;
boolean bStar = false;
String[] sPing={"/a.png","/i.png","/u.png","/e.png","/o.png",
"/ka.png","/ki.png","/ku.png","/ke.png","/ko.png",
"/sa.png","/si.png","/su.png","/se.png","/so.png",
"/ta.png","/ci.png","/cu.png","/te.png","/to.png",
"/na.png","/ni.png","/nu.png","/ne.png","/no.png",
"/ha.png","/hi.png","/hu.png","/he.png","/ho.png",
"/ma.png","/mi.png","/mu.png","/me.png","/mo.png",
"/ya.png", "/yu.png", "/yo.png",
"/ra.png","/ri.png","/ru.png","/re.png","/ro.png",
"/wa.png", "/ou.png",
"/n.png"
};
public showCanvas()
{
Object o = new Object();
v= new Vector();
for (int i=1;i<42;i++)
{
v.addElement(i+"");//""+i=object??
}
initImg();
}
public void paint(Graphics g)
{
g.setColor(255,255,255);
g.fillRect(0,0,getWidth(),getHeight());
// System.out.println("Draw it");
if (bStar)
g.drawImage(scaleImg(iPing[radNum-1],getWidth(),getHeight()),0,0,Graphics.TOP|Graphics.LEFT);
if (bSee)
{
g.setColor(255,0,0);
g.setFont(Font.getFont(Font.FACE_SYSTEM,Font.STYLE_BOLD,Font.SIZE_LARGE));
g.drawString(getAnswer(radNum-1),4*getWidth()/5,getHeight()/20,Graphics.TOP|Graphics.LEFT);
bSee = false;
}
}
public void keyPressed(int keyCode)
{
int keys = getGameAction(keyCode);
bSee = true;
repaint();
/* if (keys == DOWN)
{
}*/
}
/*放大缩小图片的函数*/
public Image scaleImg(Image src,int dstW,int dstH)
{
int srcW = src.getWidth();
int srcH = src.getHeight();
Image buf1 = Image.createImage(dstW,srcH);
Graphics bg = buf1.getGraphics();
int srcX=0;
for(int x = 0;x<dstW;x++)//先横向扩展
{
srcX = x*srcW/dstW;//求扩展后的某点X所对应的原图上的X
bg.setClip(x,0,1,srcH);
bg.drawImage(src,x-srcX,0,0);
}
Image buf2 = Image.createImage(dstW,dstH);
bg = buf2.getGraphics();
int srcY = 0;
for(int y=0;y<dstH;y++)
{
srcY = y*srcH/dstH;
bg.setClip(0,y,dstW,1);
bg.drawImage(buf1,0,y-srcY,0);
}
return buf2;
}
//获得假名的名称
public String getAnswer(int k)
{
String sA;
int ed= sPing[k].indexOf(".");
sA = sPing[k].substring(1,ed);
return sA;
}
public void initImg()
{
iPing = new Image[sPing.length];//此句必须有。
for (int i=0;i<sPing.length;++i)
{
try
{
iPing[i] = Image.createImage(sPing[i]);
}
catch(Exception e){}
//System.out.println(sPing[i]);
}
/* try
{
g.drawImage(Image.createImage("/op.png"),0,0,Graphics.TOP|Graphics.LEFT);
}catch(Exception e){}*/
}
public int randomPic()
{
int irad;
/*获得随机数的方法*/
Random r = new Random();
if (v.size()>=1)
{
radNum = Math.abs(r.nextInt())%(v.size());
System.out.println("radNum is :"+radNum);
oRad = v.elementAt(radNum);
v.removeElement(oRad);
//System.out.println(v.size());
//v.trimToSize();
}
radNum = Integer.parseInt(oRad.toString());
return radNum;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -