[J2ME] Bài 1: Hello World

1/1/2018 | Updated: 28/8/2020 | View: 6


J2ME cung cấp cho ta hai mức đồ họa: đồ họa cấp thấp và đồ họa cấp cao.

Đồ họa mức cao dùng cho văn bản hay form.

Đồ họa mức thấp dùng cho các ứng dụng trò chơi yêu phải vẽ lên màn hình.

Form là gì?

Form là đồ họa cấp cao, nhưng việc lập trình trên form lại dễ hơn so với Canvas (đồ họa cấp thấp), do đó người mới học hãy làm quen với form trước. Những tài liệu bên dưới lấy của bạn LeZink và bổ sung thêm. Hôm nay mình sẽ dạy các bạn viết code và tạo một ứng dụng viết một dòng chữ lên Form và in lên màn hình. Đầu tiên bạn phải biết cách Complice source J2ME và đóng gói ứng dụng đã nhé (tự tìm hiểu). Tạo 1 file HelloWorld.java. Lưu ý phải viết đúng tên file không sai chữ hoa, thường.

Nội dung file HelloWorld.java:

import javax.microedition.midlet.*;
import javax.microedition.lcdui.*;

public class HelloWorld extends MIDlet {

Form f = new Form("tên form");

public void startApp(){
f.append("HELLO WORLD!");
Display.getDisplay(this).setCurrent(f);
}

public void pauseApp() {}

public void destroyApp(boolean unconditional) {}

}

Sau đó ta lưu lại, dưới đây là phần hướng dẫn cho từng dòng...

import javax.microedition.midlet.*;
import javax.microedition.lcdui.*;

2 dòng có tiền tố import này dùng để khai báo thư viện, giống như uses crt trong pascal, tất nhiên có nhiều thư viện.

public class HelloWorld extends MIDlet

Dòng này là phần mở đầu của 1 class, có thể có nhiều phần có tiền tố public, giống như procedure trong pascal (chương trình con). Sau dòng này, ta khai báo biến và các thứ khác... HelloWorld là tên class mà khi mình tạo project mới, phân biệt hoa thường, nếu khi code mà viết sai tên class thì build xong ứng dụng java sẽ bị lỗi Ứng dụng sai: Class Not Found (ko tìm thấy class).

Form f = new Form("đặt tên cho tiêu đề tại đây, nằm trong dấu nháy kép");

Dòng này dùng để tạo form, form giống như 1 màn hình, ví dụ như trên form1 có cái link, nhấn vào là hiện form2, form2 có nút Quay Về và Tiếp Tục, bấm Quay Về thì hiện form1, bấm Tiếp Tục thì hiện form3. Hay ho nhỉ. Trên form có thể thêm nhiều thứ như Văn bản, hình, danh sách, menu,... Cấu trúc để khai báo là:

Form tên= new Form("tiêu đề");
public void startApp() {
Tất cả những gì trong này sẽ đc thực hiện khi mở ứng dụng
}

Gọi nôm na là thân chương trình, lưu ý là có rất nhiều phần code được gom trong 2 dấu ngoặc {}, phải tinh mắt để phân chia ra có bao nhiêu dấu mở { thì sẽ có bấy nhiêu dấu đóng }

f.append("HELLO WORLD");

Dòng này nghĩa là in chữ "HELLO WORLD" lên form, ở đây form tên là f mà ta đã khai báo ở trên kia.

Display.getDisplay(this).setCurrent(f);

Dòng này nghĩa là cho form f xuất hiện, vì mỗi lần chỉ xuất hiện được 1 form, muốn hiện form2 thì Display.getDisplay(this).setCurrent(form2); Trong pascal mở và kết thúc 1 phần bằng cặp begin...end. Còn ở đây là cặp ngoặc nhọn {}. Nhớ xuống dòng sau mỗi dấu ngoặc nhọn và dấu chấm phẩy. Các phần còn lại ta cứ để đó sẽ hướng dẫn sau... Đã xong, các bạn có thể build và test thử rồi đó.

Xuống dòng trong J2ME

Khi các bạn in một cái gì đó ra màn hình muốn nó xuống các dòng nhưng không tài nào xuống được. Vd:

f.append("a");
f.append("b");
f.append("c");

thì khi in ra vẫn là "abc" trên màn hình :D Muốn nó xuống dòng ta sẽ dùng kí tự "\n" để xuống dòng. Khi đó ta có code như sau:

f.append("a\nb\nc");

in ra màn hình sẽ là:

a
b
c

Tags: ,