1. 1
MODUL PSB_2
J2ME (Java 2 Micro Edition)
A. Tujuan :
1. Memahami konsep GUI Pilihan di J2ME.
2. Memahami konsep pembuatan command
3. Memahami passing parameter (manajemen event)
B. Dasar Teori
Ticker
Ticker merupakan teks yang berjalan pada bagian atas layer aplikasi MIDlet. Sebuah
ticker dapat ditempatkan pada objek-objek turunan class Screen yang telah disebutkan yaitu
TextBox, List, Form dan Alert. Untuk menambahkan ticker ke screen lakukan seperti berikut:
Ticker t = new Ticker("J2ME") ;
t.setTicker(tick);
Display.getDisplay(this).setCurrent(t);
Keterangan : t (ticker) adalah Objek dari Textbox, sedangkan display adalah Objek
Display.
Bekerja dengan Form
Gambar 1. Klas Utama dalam Paket lcdui
Bekerja dengan Form memungkinkan Anda untuk menampilkan beberapa komponen
GUI semacam daftar pilihan, masukan teks (textbox) dalam satu layar. Form
diimplementasikan oleh class javax.microedition.lcdui.Form. Form dapat menampung
komponen-komponen yang disebut item dalam satu layar. Item tersebut adalah ChoiceGroup,
DateField, textfield, Gauge dan ImageItem seperti pada Gambar 1. Item-item tersebut
merupakan implementasi dari class turunan Item(javax.microedition.lcdui.Item). Isi
dari TextBox dapat diambil kembali dengan menggunakan method getString().
public Form(String title)
public Form(String title, Item[] items)
2. 2
Konstruktor pertama, menyediakan sebuah form dengan judul form seperti parameter
title yang diberikan, sedangkan konstruktor kedua mendefinisikan item-item apa saja yang
akan ada di form yang akan dibuat.
Komponen Form :
1. ChoiceGroup : Class ini menyediakan komponen yang mirip dengan list, yakni
menyediakan daftar pilihan.
2. DateField : Class ini menyediakan komponen untuk memasukkan informasi tanggal dan
waktu.
3. TextField : Class ini menyediakan komponen untuk masukan teks string oleh pengguna.
4. Gauge : Class ini menyediakan komponen grafik horisontal yang biasanya digunakan
untuk memberikan gambaran berapa persen proses berjalan.
5. Image dan ImageItem : Class ini menyediakan komponen grafik untuk manipulasi
gambar, dan;
6. StringItem : Class ini menyediakan komponen teks string yang tidak bisa diedit oleh
pengguna.
TextField
Objek TextField digunakan untuk meletakkan objek teks string yang bisa diubah oleh
pengguna secara langsung pada form. Jadi objek ini mirip dengan objek Textbox. Objek
TextField diimplementasikan oleh class TextField (javax.microedition.lcdui.TextField) yang
merupakan class turunan dari class abstract javax.microedition.lcdui.Item.
Konstruktor dari class TextField adalah:
public TextField(String title, String text, int maxSize, int
constraints)
Parameter-parameter pada konstruktor adalah:
o String title : untuk memberikan title pada TextField
o String text : untuk memberikan nilai awal pada TextField
o int maxsize : untuk memberikan batasan maksimal jumlah karakter
o int constraints
Ada beberapa nilai yang bisa digunakan untuk parameter ini yaitu :
o TextField.ANY : Artinya Anda bisa memasukkan sembarang karakter teks
o TextField.EMAILADDR : Artinya Anda bisa memasukkan teks yang merupakan alamat
email. Misalnya : yasdinul@elect-eng.its.ac.id
o TextField.NUMERIC : Artinya Anda hanya bisa memasukkan teks berupa angka saja
o TextField.PHONENUMBER : Artinya Anda hanya bisa memasukkan teks berupa nomor
telepon saja misalnya +6281234567
o TextField.URL : Artinya Anda hanya bisa memasukkan teks berupa alamat web atau URl
lain, misalnya http://java.sun.com
o TextField.PASSWORD : Seperti memasukkan password pada saat login ke Windows,
masukan Anda akan ditampilkan dengan karakter tertentu, misalnya *. Tipe batasan ini
bisa digunakan dengan tipe batasan yang lain dengan menggunakan operator | sehingga
menambah kemampuan pembatasan yang ada. Misalnya :
TextField t = new TextField (“”,””,25,TextField.PASSWORD |
TextField.PHONENUMBER) ;
3. 3
TextField t = new TextField (“”,””,25,TextField.PASSWORD |
TextField.NUMERIC) ;
C. Tugas Pendahuluan
Buatlah desain flowchart untuk setiap soal dalam percobaan
D. Percobaan
Catatan: Ganti project name P2ProgramForm1 dengan P2ProgramForm3F8, sesuai group
praktikum anda masing-masing.
D.1. Latihan
Latihan 1: Membuat aplikasi teks berjalan dengan Ticker.
Catatan: Ticker adalah sebuah obyek yang unik dan dapat tampil baik di antarmuka
tingkat atas maupun antarmuka tingkat bawah. Ticker berfungsi menampilkan teks
bergerak pada sebuah obyek turunan Displayable baik itu Screen maupun Canvas.
Sebuah ticker dapat dipasang pada Displayable dengan memanggil setTicker(). Jika
ticker telah ada pada Displayable, maka akan diganti oleh ticker yang baru yang terdapat
dalam parameter.
Sebuah displayable dapat ditampilkan dengan memanggil method setCurrent() dari
Display instance/obyek.
4. 4
Latihan 2 : Membuat tombol dengan perintah Command untuk keluar dari suatu aplikasi.
Catatan: Form selain memiliki obyek Item biasanya juga mempunyai obyek Command.
Fungsi Command pada Form ini juga sama dengan fungsi Button pada Form di HTML.
Command berfungsi sebagai trigger untuk memulai suatu proses.
Latihan 3: Pembuatan navigasi antar Form dengan Command.
Catatan: Kita membutuhkan object Display (hanya ada satu display per MIDlet)
untuk melakukan fungsi menggambar pada layar. exitCommand adalah perintah yang
akan kita taruh pada layar agar kita dapat keluar dari program.
5. 5
Latihan 4: Membuat tampilan GUI berupa nama dan password.
Catatan: Masukan/input pada TextField dapat di format sesuai kebutuhan. Ada enam jenis
format yang dikenali oleh TextField yaitu ANY, EMAILADDR, NUMERIC, PHONENUMBER, URL dan
DECIMAL. Semua format input di atas merupakan konstanta static dari class TextField. Untuk
format EMAILADDR, PHONENUMBER dan URL dapat mendapatkan perlakuan khusus tergantung
implementasi vendor. Perlakukan khusus ini antara lain kelebihan untuk melakukan lookup atau
melihat ke dalam phonebook perangkat mobile untuk memasukkan nomor telepon, email ataupun
alamat URL.
Latihan 5: Membuat tampilan GUI berupa nama dan password.
Catatan: Method addCommand() pada object Alert memberikan perintah "Exit" pada layar. Method
setCommandListener() memberikan informasi kepada sistem untuk memberikan semua command events
ke MIDlet. Code "implements CommandListener" adalah untuk command/key presses, sehingga
program kita mampu menghandle "command" events. Jika kita melakukan implement
6. 6
CommandListener, kita harus membuat method commandAction(). commandAction() di atas hanya
menghandle request untuk perintah "Exit". Method di atas akan menghentikan program menggunakan
notifyDestroyed() jika perintah "Exit" dijalankan atau ditekan.
D.2. Permasalahan
Untuk permasalahan dalam praktikum, Buat program aplikasi berbasis J2ME untuk
melakukan proses berikut :
E. Laporan Resmi
Buatlah analisa dari program yang telah anda buat di praktikum (Latihan 1-5) . Buat
program aplikasi berbasis J2ME untuk melakukan proses berikut :
Format Keterang