PEMOGRAMAN APLIKASI BERGERAK (Java ME) Yoannita

dokumen-dokumen yang mirip
J2ME GUI dan Manajemen Event

PEMOGRAMAN APLIKASI BERGERAK (Java ME) Yoannita

PEMOGRAMAN APLIKASI BERGERAK (Java ME) Company LOGO

PEMOGRAMAN APLIKASI BERGERAK (Java ME)

Mobile Computing. Ramos Somya

DateField adalah objek yang dapat digunakan untuk menampilkan atau mengedit objek yang bertipe Date.

1. Tujuan. 2. Latar Belakang. 3. Percobaan. Modul Praktikum MMAPI. Setelah mempelajari bab ini, Pelajar diharapkan mampu untuk :

Bab Tujuan. 2.2 Pengenalan. 2.3 "Hello, world!" MIDlet

Low Level User Interface

11.1 Tujuan Timers

MODUL 11 J2ME (Java 2 Micro Edition)

Mobile Computing. Ramos Somya

06/03/2018. Tidak memiliki parameter. Melakukan inisialisasi semua variabel private dengan nilai awal.

1. Tujuan. 2. Latar Belakang. 3. Percobaan. Modul Praktikum TiledLayer

1.Mengatur jadwal tugas menggunakan Timers 2.Mengetahui bagaimana membaca file dari aplikasi mobile sederhana

MODUL 9 J2ME (Java 2 Micro Edition)

P4 Bab 4 User Interface

Yang dilakukan terlebih dahulu adalah membuat class Canvas yang nantinya akan dipanggil sebagai objek. Berikut adalah contoh kodenya.

APLIKASI KAMUS BAHASA JEPANG - INDONESIA PADA PERANGKAT GENGGAM MENGUNAKAN J2ME

1.Tujuan. 2. Latar Belakang. 3. Percobaan

Pemrograman Lanjut. Interface

BONUS. Dasar Java Mobile. Mengenal Java Mobile Mengenal MIDlet Mobile Grafis Mobile Animasi Latihan Soal

MODUL PRAKTIKUM PEMROGRAMAN BERORIENTASI OBJEK (JAVA) PERTEMUAN 12 WIRELESS JAVA PROGRAMMING WITH JAVA 2 MICRO EDITION (J2ME)

LAMPIRAN Listing Program

Exception Handling and Multithreading

BAB 2. Class Thread. Setelah mempelajari modul ini peserta diharapkan dapat: Mengenal Kelas Thread Menggunakan Kelas Thread dalam aplikasi

TPI4202 e-tp.ub.ac.id. Lecture 4 Mas ud Effendi

1/5. while and do Loops The remaining types of loops are while and do. As with for loops, while and do loops Praktikum Alpro Modul 3.

BAB Argument Command-Line dan System Properties

1. Mampu mengimplementasikan thread dalam sebuah aplikasi 2. Memahami kegunaan thread dalam aplikasi

MODUL 10 J2ME (Java 2 Micro Edition)

2 TIPE DATA DAN VARIABEL

BAHASA PEMROGRAMAN JAVA

Pemrograman Lanjut. Instance Variable Access Modifier Set dan Get Method

Pemrograman Web. Object Oriented Programming in PHP 5

Praktikum JTable. Gambar 1

Chapter 1 Buat aplikasi kita menggunakan VisualMidlet

DASAR PEMOGRAMAN JAVA

Kelompok 12. Thread Java

1. Keyword mana yang memiliki fungsi sama dengan keyword this dan menyediakan reference ke atribut turunan dari objek? super

Penggunaan Canvas Pada J2ME Untuk Game Programming

BAB II VARIABEL DAN TIPE DATA

Dengan method diatas, berapa byte data yang terdapat pada stream dout? 3

1. Apa yang harus dilakukan oleh programmer untuk menangani user-defined exception? Menuliskan exception sebagai start method

PERTEMUAN VII Multithreaded Programming. Praktikan mampu membuat program sederhana mengenai threading

PEMOGRAMAN JAVA. Yoannita. Tipe Data (ii) : Array Exception Handling

1. Manakah jawaban yang benar,pada saat Anda mengcompile dan menjalankan class berikut ini:

Pengenalan OOP. Object-Oriented programming (OOP) Menitikberatkan pada konsep object sebagai elemen dasar dari program.

BAB 5 Android Event Handling Mahardeka Tri Ananta

TUJUAN. Memahami Koneksi dan Pemrosesan Basis Data di Java Memahami JDBC Menggunakan MySQL pada program Java

BAB 5 Mendapatkan Input dari Keyboard

Modul Tutorial C# 2 DASAR PEMROGRAMAN C# : STATEMENT DAN OPERATOR ENRICO BUDIANTO MICROSOFT INNOVATION CENTER UNIVERSITAS INDONESIA

BAB 8 Argumen dari Command-line

PEMROGRAMAN BERORIENTASI OBJEK

PRAKTIKUM 6 EXCEPTION

MOBILE PROGRAMMING. Oleh : CHALIFA CHAZAR

Monitor. Process Synchronization. SISTIM OPERASI (IKI-20230) ProcessSynchronization Ch. 6. Johny Moningka

Pengenalan Java, Tipe Data, Variabel dan Operator. Putu Putra Astawa

Apa yang menjadi output potongan kode diatas? Error karena tidak ada String yang di-passing kedalam konstruktor Bapak

Exception Handling. Oleh : Agus Priyanto, M.Kom

Score: Persentase: % ~ u ~ Generated by Foxit PDF Creator Foxit Software For evaluation only.

BAB 8 Argumen dari Command-line

Login Screen. This is the Login Screen. You just type your given user id and password to use the application.

INTERAKSI ANTAR OBJECT

Pemrograman Berorientasi. Abstract & Interface

SILABUS MATA KULIAH PEMROGRAMAN APLIKASI BERGERAK

TUGAS PROGRAM DIAGONAL, VETIKAL, DAN HORIZONTAL OPENGL (MENGGUNAKAN JAVA) NAMA : SYIFA MUTIARA SARI KELAS : 3KA23 NPM :

PEMROGRAMAN JAVA : VARIABEL DAN TIPE DATA

E-Book PEMROGRAMAN BERORIENTASI OBJEK. Disusun Oleh: Arfian Hidayat, S.Kom

Sukses. Kesalahan pada URL. File tidak lengkap. Kesalahan umum

1. Mana diantara pilihan-pilihan berikut ini yang merupakan penulisan loop yang benar?

.NET Controls. Control Creation

Pemrograman Jaringan 5.

PEMAHAMAN DASAR DASAR JAVA

2. Pilih instruksi yang dapat digunakan dalam method actionperformed untuk membedakan antara tombol buttonone dan buttontwo.

BAB 5 Mendapatkan Input dari Keyboard

Pemrograman Berorientasi Obyek (IT251) Ramos Somya, S.Kom., M.Cs.

32-bit and 64-bit Windows: Frequently asked questions

int i = 0; while (i < 10) { System.out.println( Informatika Unpas ); i++; }

BAB 3 TYPE DATA, VARIABLE DAN OPERATOR

Membuat Menu Login Sederhana [Full Coding]

Mengunci sebuah object: Untuk memastikan bahwa hanya satu thread yang mendapatkan hak akses kedalam method tertentu

Modul Pelatihan : Pembuatan Game Animasi Menggunakan Greenfoot

KESASTRAAN MELAYU TIONGHOA DAN KEBANGSAAN INDONESIA: JILID 2 FROM KPG (KEPUSTAKAAN POPULER GRAMEDIA)

PERCOBAAN 6 EXCEPTION

Pemograman Java. Yoannita, S.Kom. Argumen Command Line Exception Handling Package

E VA D A E L U M M A H K H O I R, M. A B. P E R T E M U A N 2 A N A

Operator dan Assignment

BAB IV IMPLEMENTASI DAN PENGUJIAN SISTEM

5.Buatlah subclass world, beri nama subclass word :latar.pilih jalan.png sebagai image. Compile.

Badiyanto, S.Kom., M.Kom. PBO java

GUI, Ev e Ev n e t n Handling, Ex ception Handling in Java

Transkripsi:

PEMOGRAMAN APLIKASI BERGERAK (Java ME) Yoannita

2 COMMAND Event Handling with Commands

Overview Displayable, the parent of all screen displays, supports a very flexible user interface concept, the command. A command is something the user can invoke you can think of it as a button. Like a button, it has a title, like "OK" or "Cancel," and your application can respond appropriately when the user invokes the command. The premise is that you want a command to be available to the user, but you don't really care how it is shown on the screen or exactly how the user invokes it keypad button, soft button, touch screen, whatever. book.javanb.com

Overview Semua kelas Displayable menyimpan command-command yang digunakannya dalam suatu daftar/list Anda dapat menambah atau membuang command menggunakan method berikut ini : public void addcommand(command cmd) public void removecommand(command cmd) book.javanb.com

Creating Commands Pada MIDP, semua command direpresentasikan sebagai instance dari kelas Command. Untuk menciptakan suatu command, anda perlu mengisi nama, tipe dan priority dari command tersebut. Nama command biasanya tampil pada layar. Tipe command dapat digunakan untuk mendeskripsikan kegunaan dari command tersebut. book.javanb.com

Command Types Implementasi posisi Command (softkey yang merepresentasikan) ini tergantung pada vendor perangkatnya. Berikut tipe-tipe dari command : NAME OK CANCEL BACK STOP HELP SCREEN MEANING Confirms a selection. Cancels pending changes. Moves the user back to a previous screen. Stops a running operation. Shows application instructions. Generic type for specific application commands.

Ringkasan Constructor 1. Command (String label, int commandtype, int prioritas) Menciptakan command baru objek dengan label yang diberikan pendek, jenis, dan prioritas. 2. Command (String shortlabel, String longlabel, int commandtype, int prioritas) Menciptakan command baru objek dengan label yang diberikan, jenis, dan prioritas. 7

Membuat sebuah Command Command(String label, int commandtype, int priority) Contoh pendeklarasian : Command exitcommand = new Command("Exit", Command.EXIT, 1); 8

Command Parameter Contoh 2: Command infocommand = new Command("Info", Command.SCREEN, 2); Label : Info tulisan yang akan muncul ke user Type : Command.SCREEN Ada beberapa tipe command : BACK, CANCEL, EXIT, HELP, ITEM, OK, SCREEN, and STOP. Priority : 2 9

Priority Priority menentukan urutan prioritas penampilan suatu Command pada layar. Semakin kecil priority maka Command itu akan lebih mudah diakses dibandingkan dengan Command yang nilai priority nya lebih besar. 10

Priority Contoh : readcommand = new Command("Read", Command.ITEM, 1); replycommand = new Command("Reply", Command.ITEM, 2); delcommand = new Command( Delete", Command.ITEM, 3); list.addcommand(readcommand ); list.addcommand(replycommand); list.addcommand(delcommand); Urutan yang akan ditampilkan ke user : 11

Priority Contoh : readcommand = new Command("Read", Command.ITEM, 1); replycommand = new Command("Reply", Command.ITEM, 2); delcommand = new Command( Delete", Command.ITEM, 3); list.addcommand(delcommand); list.addcommand(replycommand); list.addcommand(readcommand ); Tampilan: 12

Priority Contoh: readcommand = new Command("Read", Command.ITEM, 1); delcommand = new Command("Delete", Command.ITEM, 1); replycommand = new Command("Reply", Command.ITEM, 1); list.addcommand(delcommand); list.addcommand(replycommand); list.addcommand(readcommand ); Tampilan: 13

Command Command dapat dimasukkan ke dalam obyek Displayable mengunakan method sebagai berikut : public void addcommand(command cmd) Sedangkan penghapusan dengan menggunakan method sebagai berikut : public void removecommand(command cmd) Jangan lupa untuk menambahkan setcommandlistener() pada Form/Canvas/List yang menggunakan CommandAction 14

CommandListener CommandListener merupakan interface dengan single method: void commandaction(command command, Displayable displayable) Method commandaction() akan dipanggil jika Command dipilih. Variabel command merupakan referensi Command yang telah dipilih. Oleh karena itu, sintaks setcommandlistener perlu diberikan kepada objek yang menggunakan/menambahkan command (addcommand). Contoh : frmsms.addcommand(cmdexit); frmsms.setcommandlistener(this); 15

Langkah-langkah

Langkah-langkah Tambahkan tulisan implements CommandListener setelah extends MIDlet public class ProgramPertama extends MIDlet implements CommandListener { Display display; Form frmtampil; public ProgramPertama() { display = Display.getDisplay(this); frmtampil = new Form("Contoh Command"); }

Langkah-langkah Akan muncul warning/error, arahkan kursor ke tanda lampu, lalu pilih import,

Langkah-langkah setelah itu arahkan lagi kursor ke tanda lampu, pilih implements all abstract methods

Tambahkan sintaks program berikut ini : public class ProgramPertama extends MIDlet implements CommandListener { Display display; Form frmtampil; Command cmdkeluar; public ProgramPertama() { display = Display.getDisplay(this); frmtampil = new Form("Contoh Command"); cmdkeluar = new Command("Keluar", Command.EXIT, 1); } frmtampil.addcommand(cmdkeluar); frmtampil.setcommandlistener(this);

Tambahkan baris perintah berikut ini ke dalam method commandaction() : if (c == cmdkeluar) { destroyapp(false); this.notifydestroyed(); }

Keterangan Pada method destroyapp( ), MIDlet harus melepaskan semua resource yang dialokasikan kepadanya, memutuskan semua threads yang berjalan, dan menghentikan semua timer yang aktif. Ketika MIDlet diakhiri seperti ini, isi argumen dari destroyapp() bernilai true, untuk mengindikasikan bahwa MIDlet tidak dapat mencegah proses untuk terus berlanjut. Namun, dalam beberapa keadaan tertentu, adalah berguna untuk memberikan pilihan pada MIDlet untuk tidak mengakhiri proses, misalkan jika kemungkinan ada data yang dibutuhkan untuk disimpan, dalam hal ini method destroyapp() dapat dipanggil dengan argumen false, yang menunjukkan bahwa MIDlet dapat dilanjutkan dengan melempar kesalahan MIDletStateChangeException onjava.com

Keterangan Kode program berikut ini mengilustrasikan bagaimana teknik yang baik untuk mengimplementasikan kondisi shutdown pada suatu MIDlet : try { // Call destroyapp to release resources destroyapp(false); // Arrange for the MIDlet to be destroyed notifydestroyed( ); } catch (MIDletStateChangeException ex) { // MIDlet does not want to close } onjava.com

Keterangan This code might be used to respond to an Exit button in the MIDlet's user interface. It begins by directly invoking the MIDlet's own destroyapp( ) method so that resources are released. If the MIDlet is not in an appropriate state to terminate, anddestroyapp( ) is called with argument false, the MIDlet should throw a MIDletStateChangeException. The calling code should catch this exception and do nothing, as shown here. On the other hand, if the MIDlet is prepared to be terminate, it should complete the destroyapp( ) method normally, in which case the calling code uses the MIDlet notifydestroyed( )method to tell the MIDP platform that the MIDlet wants to be terminated. onjava.com

Keterangan When the MIDlet is being destroyed by the platform, most likely because the user has requested it, the MIDlet'sdestroyApp( ) method is called with the argument true, and the MIDlet is destroyed when this method completes. It is not necessary in this case for the MIDlet to invoke its notifydestroyed( ) method. When the MIDlet itself wants to terminate, typically because it has no more useful work to do or the user has pressed an Exit button, it can do so by invoking its notifydestroyed( ) method, which tells the platform that it should be destroyed. In this case, the platform does not call the MIDlet's destroyapp() method; it assumes that the MIDlet is already prepared to be terminated. Most MIDlets invoke their own destroyapp( ) method to perform the usual tidy up onjava.com

28