📄 fictioncanvas.java
字号:
package x;
import javax.microedition.lcdui.*;
public class fictionCanvas extends Canvas implements Runnable,CommandListener{
static fictionCanvas instance=null;
private Image backImg;
private boolean bIfrun=false;
public int width=0,h=0,fontHeight=0;
private int tempTitleY;
private int ficStatus;//0,小说锟斤拷息锟斤拷1锟斤拷小说锟斤拷锟斤拷
String strTitleName=null,strParent=null,strAdress=null;
private int backX,backY;
String[] StrFictionName;
Font font;
public fictionCanvas(int Status){
initialize();
this.ficStatus=Status;
backX=0;
tempTitleY=this.fontHeight+5;
backY=0;
backImg= ReaderMIDlet.getImage(ReaderMIDlet.IMG_PROXY_ON);
this.StrFictionName=new String[ReaderMIDlet.fictons.size()];
for(int i=0;i<ReaderMIDlet.fictons.size();i++)
{String[] ss=(String[])ReaderMIDlet.fictons.elementAt(i);
this.StrFictionName[i]=ss[0];
}
setCommandListener(this);
}
public void initialize() {
width = getWidth();
h = getHeight();
font = Font.getDefaultFont();
fontHeight = font.getHeight();
}
public void start(){
Thread t=new Thread(this);
bIfrun=true;
t.start();
}
public void stop(){
bIfrun=false;
}
private byte selectedItem=0;
public void paint(Graphics g){
if(this.ficStatus==0)
{
g.setColor(0,0,0);
g.fillRect(0,0,this.getWidth(),this.getHeight());
g.drawImage(backImg,backX,backY,Graphics.LEFT|Graphics.TOP);
int y=0;
g.setColor(255,255,255);
g.fillRect(0,tempTitleY+(fontHeight*3/2)*selectedItem-2,width,this.fontHeight+4);
for(int i=0;i<StrFictionName.length;i++){
if(i==this.selectedItem){
g.setColor(0,0,0);
}else{g.setColor(255,255,255);}//setcolor
System.out.println(StrFictionName[i]);
g.drawString(StrFictionName[i],width/2-font.stringWidth(StrFictionName[i])/2,tempTitleY+y,Graphics.LEFT|Graphics.TOP);
y+=this.fontHeight*3/2;
}//for
}else{
}
}
public void keyPressed(int n) {
switch(this.getGameAction(n)){
case Canvas.RIGHT:
break;
case Canvas.UP:
if(selectedItem==0){
selectedItem=(byte)(StrFictionName.length-1);
}else{
selectedItem--;
}
break;
case Canvas.DOWN:
if( selectedItem==StrFictionName.length-1){
selectedItem=0;
}else{selectedItem++;}
break;
case Canvas.FIRE:
actionMenu();
break;
}
this.repaint();
}
public void actionMenu(){
String URL[]=(String[])ReaderMIDlet.fictons.elementAt(selectedItem);
System.out.println(URL[1]);
DownLoadTextForm text=new DownLoadTextForm(URL[1]);
Display.getDisplay(ReaderMIDlet.instance).setCurrent(text);
}
public void run(){
while(bIfrun){
}
}
public void commandAction(Command arg0, Displayable arg1) {
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -