As’ad Djamalilleil http://kampusku.my.id asad.kom@gmail.com Komponen Class Item (1) As’ad Djamalilleil http://kampusku.my.id asad.kom@gmail.com.

Slides:



Advertisements
Presentasi serupa
MIDlet User Interface (3) As’ad Djamalilleil
Advertisements

Komponen Class Item (2) As’ad Djamalilleil
Struktur Kode Program MIDlet As’ad Djamalilleil
WITH FANDI SUSANTO S.SI. Pemrograman Aplikasi Bergerak By Fandi Susanto S.Si.
Struktur Kode Aplikasi Java (2) As’ad Djamalilleil
GUI & Event Handling Viska Mutiawani, M.Sc.
GUI Design Event-Driven Programming Basic Windows Controls
Antarmuka Tingkat Bawah (Canvas)
Web Teknologi 3 (MKB721C) Minggu 2 Page 1 MINGGU 2 Web Teknologi 3 (MKB721C) Pokok Bahasan: –Midlet –User Interface Tujuan Instruksional Khusus: Agar.
Komponen Class Item (3) As’ad Djamalilleil
PEMOGRAMAN APLIKASI BERGERAK (Java ME)
MIDlet User Interface (2) As’ad Djamalilleil
Instalasi JME & Uji Coba As’ad Djamalilleil
INSTRUKSI MASUKAN DAN KELUARAN
Modul 9: antarmuka grafis (GUI) dalam window
Java2 Micro Editon (J2ME)
Komponen Class Item (1) As’ad Djamalilleil
STRING Pemrograman Object Oriented dengan JAVA Teknik Informatika-UMM.
Struktur Kode Aplikasi Java (1)
PEMOGRAMAN APLIKASI BERGERAK (Java ME)
PERTEMUAN IV STRING JURUSAN TELEKOMUNIKASI
WITH FANDI SUSANTO S.SI. Pemrograman Aplikasi Bergerak By Fandi Susanto S.Si.
PERTEMUAN III SINTAK LANJUT VB
Komponen-Komponen dalam J2ME
Company LOGO PEMOGRAMAN APLIKASI BERGERAK (Java ME) “Skill to do comes of doing. “ (Ralph Waldo Emerson)
Company LOGO PEMOGRAMAN APLIKASI BERGERAK (Java ME)
PROGRAM APLIKASI MOBILE EMHA TAUFIQ LUTHFI PERTEMUAN 5 (18 APRIL 2011)
Argumen Command-line Sebuah aplikasi Java dapat menerima sejumlah argumen dari command-line. Argumen dari command line memberikan kesempatan bagi.
Company LOGO PEMOGRAMAN APLIKASI BERGERAK (Java ME) Nyimas Artina.
Company LOGO PEMOGRAMAN APLIKASI BERGERAK (Java ME) Nyimas Artina.
LABEL Sesuai dengan namanya, object yang biasanya menampilkan teks tertentu seperti: judul,keterangan, dan Iain-Iain. Label tidak memiliki data source,
PROGRAM APLIKASI MOBILE EMHA TAUFIQ LUTHFI PERTEMUAN 2.
1 Latihan Pertemuan String Matakuliah: T0616 / Algoritma dan Pemrograman Tahun: 2007 Versi: 1/0.
PROGRAM APLIKASI MOBILE EMHA TAUFIQ LUTHFI PERTEMUAN 4 (12 APRIL 2011)
Pada Bab sebelumnya, kita telah mendiskusikan bagaimana cara pendeklarasian berbagai macam variabel dengan menggunakan tipe data primitif. Dalam pendeklarasian.
Pemrograman Aplikasi Bergerak
Command line argument.
PERTEMUAN 5 TextField merupakan turunan Item yang bisa menampung teks dan mengedit teks tersebut. TextField mempunyai ukuran maksimum, label dan format.
PROCEDURE AND FUNCTION
High Level User Interface
FIELD PROPERTIES & DATABASE RELATIONSHIP
Pengantar Pemrograman
MIDP High-Level User Interface
Field Name / Nama Field Data Type / Tipe Data
Command line argument.
Tipe Data, Variabel, dan Operator
Form & Item Oleh : Oman Somantri S.Kom
As’ad Djamalilleil Elemen Dasar Java As’ad Djamalilleil
Struktur Kode Aplikasi Java (2)
MIDlet User Interface (2)
Struktur Kode Program MIDlet
As’ad Djamalilleil Komponen Class Item (2) As’ad Djamalilleil
Perintah Input/Output
Membangun User Interface
As’ad Djamalilleil Komponen Class Item (3) As’ad Djamalilleil
As’ad Djamalilleil Akses File As’ad Djamalilleil
Review Materi Java Fundamental
As’ad Djamalilleil Class List As’ad Djamalilleil
Tipe Data, Variabel, dan Operator
MIDlet User Interface (3)
Agung Brastama Putra Pertemuan 11
Mobile Teknologi Pertemuan 3
Instalasi JME & Uji Coba
Mobile Teknologi Pertemuan 2
FIELD PROPERTIES & DATABASE RELATIONSHIP
antarmuka grafis (GUI) dalam window
Pemrograman Berorientasi Objek
Tipe Data, Variabel, dan Operator
Komponen table Ms. Access
Pada Bab sebelumnya, kita telah mendiskusikan bagaimana cara pendeklarasian berbagai macam variabel dengan menggunakan tipe data primitif. Dalam pendeklarasian.
Transcript presentasi:

As’ad Djamalilleil http://kampusku.my.id asad.kom@gmail.com Komponen Class Item (1) As’ad Djamalilleil http://kampusku.my.id asad.kom@gmail.com

Class StringItem StringItem merupakan komponen user interface paling sederhana yang digunakan untuk menampilkan sebuah atau sepasang string pada Form public StringItem(String label, String text) label label dari StringItem dapat diubah dengan metode setLabel() dan dibaca dengan metode getLabel() text Isi dari StringItem dpt diubah dgn metode setText() dan dibaca dgn metode getText()

public String getText( ) public void setText(String text) Kedua argumen label dan text dapat dikosongkan dengan memberikan nilai null sebagai argumen Sebuah teknik yang biasa digunakan untuk menambahkan teks dalam Form adalah dengan menggunakan metode append() seperti berikut: form.append("Fikom"); Kode di atas sama dengan membuat objek StringItem dengan null sebagai argumen label, seperti kode berikut: form.append(new StringItem(null, "Fikom"));

Aplikasi Demo StringItem import javax.microedition.midlet.*; import javax.microedition.lcdui.*; public class CobaTulis extends MIDlet { private Display layar; private Form frm; private StringItem str; public CobaTulis() { layar = Display.getDisplay(this); }

public void startApp() { frm = new Form("Percobaan StringItem"); str = new StringItem("Fakultas :", "Ilmu Komputer"); frm.append(str); layar.setCurrent(frm); System.out.println("ini labelnya : " + str.getLabel()); System.out.println("ini textnya : " + str.getText()); str.setLabel("Pekerjaan :"); str.setText("Programmer komputer"); }

public void pauseApp() { } public void destroyApp(boolean unconditional) {

Class TextField Perbedaan antara TextField dan TextBox adalah sbb: TextBox turunan dari class Screen sehingga ditempilkan memenuhi satu layar. TextField adalah sebuah Item yang menempati hanya bagian kecil dari Form. Biasanya TextField ditampilkan sebagai satu baris ruang input saja TextBox tidak dapat melaporkan perubahan isinya ke listener, sedangkan perubahan isi pada TextField dilaporkan ke class ItemStateListener yang telah dihubungkan dengan Form dimana TextField tersebut ditampilkan

TextField hanya memiliki sebuah constructor yang mirip dengan TextBox: public TextField(String label, String text, int maxSize, int constraints); label ditampilkan sebelum ruang input sebagai keterangan, dapat dikosongkan dgn nilai null sebagai argumen text isi awal dari TextField, dapat pula dikosongkan seperti pada bagian label di atas

maxSize jumlah maksimum karakter yang dapat ditampung constraints membatasi tipe dari data yang diinput Jumlah maksimum karakter dapat diubah dengan metode setMaxSize(), sedangkan untuk mendapatkan jumlah maksimum karakter dapat digunakan metode getMaxSize() Jika maxSize lebih kecil dibandingkan dengan isi TextField, maka akan tampil error IllegalArgumentException

Isi dari TextField dapat dibaca lewat metode: public String getString( ) public int getChars(char[] chars) Sebelum menggunakan metode getChars(), terlebih dahulu kita harus mengalokasikan array karakter untuk diisi. Nilai balik dari metode ini adalah jumlah karakter dari array yang digunakan Jika array terlalu pendek untuk menampung isi TextField, maka akan tampil pesan error ArrayIndexOutOfBoundsException Error ini dapat dihindari dengan menggunakan metode size() untuk mendapatkan jumlah karakter pada TextField: char[] kar = new char[tfNama.size()]; int jum_kar = tfNama.getChars(kar);

API dari TextField dan TextBox memiliki beberapa metode yang memperbolehkan pengubahan terhadap isinya secara programatik Seluruh metode ini akan menampilkan pesan error IllegalArgumentException jika hasil dari operasi yang dijalankan menghasilkan isi yang tidak konsisten dengan constraint yang diberikan pada TextField tersebut

public void delete(int offset, int length) Menghilangkan sejumlah karakter sesuai argumen length dan dimulai dari posisi karakter dari argumen offset public void insert(char[ ] chars, int offset, int length, int position) Menyisipkan karakter dari chars pada index ke offset hingga chars pada index ke offset+length-1 ke dalam TextField, dimulai dari position yang diberikan

Mengganti isi TextField dengan string yang berada pada argumen src public void insert(String src, int position) Menyisipkan string pada argumen src ke dalam TextField pada posisi karakter ke position public void setChars(char[ ] chars, int offset, int length) Mengganti isi dari TextField dengan chars pada index ke offset hingga index ke offset+length-1 public void setString(String src) Mengganti isi TextField dengan string yang berada pada argumen src

Setiap operasi di atas akan menampilkan pesan error IllegalArgumentException bila panjang isi TextField hasil operasi tersebut lebih dari maxSize yang ditentukan sebelumnya Posisi dari titik penyisipan pada TextField ditandai pada layar dengan sebuah cursor atau yang diistilahkan dengan caret. Posisi offset dari cursor dapat diketahui lewat metode berikut: public int getCaretPosition(); Kode berikut menyisipkan tiga karakter dimulai dari posisi cursor: textField.insert("ABC", textField.getCaretPosition());

Constraints / Batasan Argumen constraints pada constructor TextField atau pada metode setConstraints() dapat digunakan untuk membatasi karakter yang dapat diketikkan oleh user ke dalam TextField

Membolehkan karakter apapun untuk diinput TextField.EMAILADDR 1 Constraint Nilai Keterangan TextField.ANY Membolehkan karakter apapun untuk diinput TextField.EMAILADDR 1 Hanya dapat diinput dengan alamat email yang benar TextField.NUMERIC 2 Hanya dapat diinput dengan nilai integer saja (karakter 0 – 9). Untuk bilangan negatif dapat diawali dengan tanda minus TextField. PHONENUMBER 3 Hanya dapat diinput dengan nomor telepon. Format penulisan nomor telepon dapat berbeda di tiap perangkat mobile

Constraint Nilai Keterangan TextField.URL 4 Hanya dapat diinput dengan format URL yang benar TextField. DECIMAL 5 Menginput dengan format bilangan decimal berbentuk pecahan PASSWORD 65536 Nilai yang diketikkan pada TextField akan di-masking untuk alasan keamanan. Biasanya menggunakan karakter asterisk ( * ) UNEDITABLE 131072 Isi TextField tidak dapat diedit

TextField.ANY | TextField.EMAILADDR Constraint dari TextField atau TextBox dapat diubah dengan memanggil metode setConstraints(): public void setConstraints(int constraints); Ketika metode ini dipanggil, isi dari TextField diperiksa untuk memastikan konsistensinya dengan constraint yang baru, jika tidak maka field akan dibersihkan isinya Beberapa constraint dapat digabung dengan menggunakan operator bitwise OR ( | ), misalnya: TextField.ANY | TextField.EMAILADDR

Aplikasi Demo TextField import javax.microedition.midlet.MIDlet; import javax.microedition.lcdui.Form; import javax.microedition.lcdui.TextField; import javax.microedition.lcdui.*; public class CobaTeks extends MIDlet { private Display disp; private Form frm; private TextField tf; public CobaTeks() { disp = Display.getDisplay(this); }

public void startApp() { frm = new Form("Demo TextField"); tf = new TextField(null, null, 255, 0); tf.setLabel("Email :"); tf.setConstraints(TextField.EMAILADDR | TextField.UNEDITABLE); tf.setString("asad.kom@gmail.com"); frm.append(tf); disp.setCurrent(frm); } public void destroyApp(boolean unconditional) { public void pauseApp() {

Perubahan Status Item/Komponen Terkadang dibutuhkan untuk dijalankan aksi pada saat nilai dari field input mengalami perubahan Perubahan pada status Item yang menerima input dari user diberikan kepada class ItemStateListener yang dihubungkan dengan Form ItemStateListener adalah sebuah interface dengan sebuah metode yang dipanggil ketika Item apapun pada Form memiliki perubahan status untuk dilaporkan:

Sebuah ItemStateListener dihubungkan menggunakan metode Form berikut: public void itemStateChanged(Item item); Sebuah ItemStateListener dihubungkan menggunakan metode Form berikut: public void setItemStateListener(ItemStateListener l); Hanya satu ItemStateListener dapat dihubungkan dengan sebuah Form pada satu saat dan memanggil setItemListener() atau memanggilnya dengan argumen null akan menghilangkan listener sebelumnya Perubahan status Item lewat kode program tidak akan memicu notifikasi ke listener

Aplikasi Demo Item State Change Pada TextField import javax.microedition.midlet.*; import javax.microedition.lcdui.*; public class CobaForm extends MIDlet implements CommandListener, ItemStateListener{ private Display layar; private Form formKu; private TextField tfNama; private Command cmdOK; public CobaForm() { layar = Display.getDisplay(this); }

public void startApp() { formKu = new Form("Ini judul form"); layar.setCurrent(formKu); tfNama = new TextField("Nama :",null, 32, 0); formKu.append(tfNama); cmdOK = new Command("OK", Command.OK, 0); formKu.addCommand(cmdOK); formKu.setCommandListener(this); formKu.setItemStateListener(this); }

public void commandAction(Command c, Displayable d) { System.out.println("Command ditekan"); } public void itemStateChanged(Item item) { System.out.println("Isi TextField berubah"); public void destroyApp(boolean unconditional) { public void pauseApp() {

Contoh potongan program yang digunakan untuk membaca perubahan isi dari TextField lewat ItemStateChange: public void itemStateChanged(Item item) { if (item instanceof TextField) System.out.println("Isinya: <" + ((TextField)item).getString( ) + ">"); }

Materi mid-test  SEMUANYA Minggu depan mid-test !! Materi mid-test  SEMUANYA