Pham_loi
Chức vụ: 22:55:22, 07-07-2016 |
Bài này hướng dẫn tạo một ứng dụng vẽ màn hình nhấp nháy đủ mọi màu sắc (like a bar .
Phần vẽ Graphics chắc mọi người đã rõ, mình chỉ giải thích thuật toán.
Chúng ta tạo một lớp Random tên rd, sau đó dùng phương thức nextInt() để lấy số ngẫu nhiên, tiếp đó ta chia cho 0xffffff lấy phần dư, ta được mã màu từ -0xfffffe cho đến 0xfffffe. Vì mã màu không có số âm cho nên chúng ta dùng phương thức abs(int i) để lấy giá trị tuyệt đối, lúc này ta nhận được số ngẫu nhiên từ 0x00 cho đến 0xfffffe, vậy là đã có mã màu ngẫu nhiên để vẽ màn hình, dùng phương thức repaint() để thực hiện vẽ lại.
//class Midlet
<?php
import javax.microedition.midlet.*;
import javax.microedition.lcdui.*;
public class Midlet extends MIDlet {
mCanvas mc;
Display d;
public Midlet() {
mc = new mCanvas();
d = Display.getDisplay(this);
d.setCurrent(mc);
}
public void startApp() {
}
public void pauseApp() {
}
public void destroyApp(boolean unconditional) {
}
}
?>
Copy code
import javax.microedition.midlet.*;
import javax.microedition.lcdui.*;
public class Midlet extends MIDlet {
mCanvas mc;
Display d;
public Midlet() {
mc = new mCanvas();
d = Display.getDisplay(this);
d.setCurrent(mc);
}
public void startApp() {
}
public void pauseApp() {
}
public void destroyApp(boolean unconditional) {
}
}
?>
Copy code
//class mCanvas
<?php
import javax.microedition.lcdui.*;
import java.util.Random;
class mCanvas extends Canvas {
int w, h;
Random rd;
public mCanvas() {
setFullScreenMode(true);
w = getWidth();
h = getHeight();
rd = new Random();
}
public void paint(Graphics g) {
int color = Math.abs(rd.nextInt() % 0xffffff);
g.setColor(color);
g.fillRect(0, 0, w, h);
repaint();
}
}
?>
Copy code
import javax.microedition.lcdui.*;
import java.util.Random;
class mCanvas extends Canvas {
int w, h;
Random rd;
public mCanvas() {
setFullScreenMode(true);
w = getWidth();
h = getHeight();
rd = new Random();
}
public void paint(Graphics g) {
int color = Math.abs(rd.nextInt() % 0xffffff);
g.setColor(color);
g.fillRect(0, 0, w, h);
repaint();
}
}
?>
Copy code
========
App: Tải xuống Blink_Screen.jar (1.6kb)
Source: Tải xuống Blink_Screen.zip (0.7kb)
Nguồn: mbvn
: 0 ♥