📄 myrms.java
字号:
import javax.microedition.lcdui.Canvas;
import javax.microedition.lcdui.Displayable;
import javax.microedition.lcdui.Font;
import javax.microedition.lcdui.Graphics;
import javax.microedition.lcdui.Image;
import javax.microedition.rms.RecordStore;
import com.nokia.mid.ui.FullCanvas;
public class MyRms extends FullCanvas
{
//排行榜画面
private Image back;
private static Displayable instance;
//创建并得到一个排行榜画面的对象
synchronized public static Displayable getInstance()
{
if(instance == null)
instance = new MyRms();
return instance;
}
//排行榜画面的构造方法,加入了2个按钮
private MyRms()
{
super();
this.setFullScreenMode(true);
back = null;
try
{
back = Image.createImage("/res/back.png");
}
catch(Exception e)
{}
}
protected void paint(Graphics g)
{
//打开数据库
try
{
GameMIDlet.rs = RecordStore.openRecordStore(GameMIDlet.RecordName,false);
}
catch (Exception e)
{
System.out.println("打开数据库失败");
}
GameRMS rd = new GameRMS();
g.setColor(0,0,0);
g.fillRect(0,0,getWidth(),getHeight());
g.setColor(255,255,0);
g.setFont(Font.getFont(Font.FACE_PROPORTIONAL,Font.STYLE_PLAIN,Font.SIZE_SMALL));
g.drawString("排行榜",getWidth()/2-25,10,Graphics.TOP|Graphics.LEFT);
g.drawString("名次 姓名 得分",10,31,Graphics.TOP|Graphics.LEFT);
g.drawString("---------------------------------------",-10,54,Graphics.TOP|Graphics.LEFT);
//使用排行榜数据解码器,将从数据库中得到的数据,转换成玩家姓名和分数
for(int i=1;i<=5;i++)
{
try {
rd.decode(GameMIDlet.rs.getRecord(i));
} catch (Exception e)
{
System.out.println("读取数据库失败");
}
//将得到的玩家姓名和分数在画面上打印出来
g.drawString(" "+i+" "+rd.name,10,50+i*20,Graphics.TOP|Graphics.LEFT);
g.drawString(" "+rd.score,80,50+i*20,Graphics.TOP|Graphics.LEFT);
}
try {
rd.decode(GameMIDlet.rs.getRecord(10));
} catch (Exception e)
{
System.out.println("读取数据库失败");
}
//关闭数据库
try
{
GameMIDlet.rs.closeRecordStore();
}catch(Exception e)
{
System.out.println("关闭数据库失败");
}
g.drawImage(back,getWidth(),getHeight(),Graphics.BOTTOM|Graphics.RIGHT);
}
protected void keyPressed(int key)
{
if (key == -7)
{
GameMenu.flow("返回");
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -