Bây giờ ta sẽ bắt đầu vẽ trên class gamecanvas và liên kết nó với class midlet.
File a.java vẽ 1 đoạn thẳng trên canvas.
import javax.microedition.lcdui.game.*;
import javax.microedition.lcdui.*;
public class a extends GameCanvas implements Runnable{
vd main;
Graphics g = getGraphics();
//Graphic là một class có sẵn trong máy ảo java-máy điện thoại của bạn, việc liên kết với nó cũng như lk với class ta viết ra
int w, h;
public a(vd main){
super(false);
this.main = main;
}
void start(){
w = getWidth();
//chieu rong man hinh
h = getHeight();
//chieu cao man hinh
Thread t = new Thread(this);
t.start();
}
public void run(){
boolean play = true;
while (play)
{
g.setColor(0x000000);
g.fillRect(0, 0, w, h);
//Nền canvas giống như ta chọn màu tờ giấy để vẽ tranh
g.setColor(0xffffff);
g.drawLine(w / 4, h / 4, w / 2, h / 2);
//Vẽ đoạn thẳng từ điểm có tọa độ (w/4;h/4) đến giữa màn hình
flushGraphics();
try
{
Thread.sleep(30);
}catch(Exception e){
}
//cho ngung mot thoi gian
}
}
}
Sau đó ta sẽ cho liên kết 2 class này lai như sau: Trong file vd.java ta thêm:
import javax.microedition.midlet.*;
import javax.microedition.lcdui.*;
public class vd extends MIDlet {
private a hcn;
//hcn được tạo ra từ class a và đại diện cho a, hy vọng dòng này giúp bạn hiểu thế nào là liên kết class
public vd(){
}
public void startApp(){
hcn = new a(this);
hcn.start();
Display.getDisplay(this).setCurrent(hcn);
}
public void pauseApp(){}
public void destroyApp(boolean unconditional)
{
notifyDestroyed();
}
}
Source:
Veduongthang.zip (4.56 KB)
Nguồn:
Ironman