
Tutorial membuat menu grid untuk aplikasi J2ME ini, sebenernya mirip dengan tutorial menu untuk aplikasi J2ME pada Canvas yang sebelumnya. Memiliki kemiripan pada logika penggambaran pada method paint() di Canvas. Hanya saja pada kali ini tidak menggunakan String yang di gambar di Canvas pada method paint() sebagai menunya, tapi menggunakan Image.
Langsung saja, saya akan menjelaskan code untuk membuat menu grid ini, perhatikan sepenggal code di bawah ini. [kode penuh dapat di download disini]
Pada gambar di atas adalah atribut pada Class Canvas yang akan melakukan penggambaran menu grid. Memang hampir mirip pada atribut menu pada tutorial sebelumnya. Tetapi memiliki perbedaan seperti,
arrImageMenu : ini adalah Array yang nantinya akan menimpan Image, yang akan di tampilkan
itsXpos : ini adalah variable untuk menyimpan posisi X untuk penentu titik penggambaran
itsInitialXPos : ini untuk menyimpan awal posisi X penggambaran
itsInitialYPos : ini untuk menyimpan awal posisi Y penggambaran
itsHorisontalLength : ini untuk menentukan berapa jumlah grid horizontal yang kita inginkan
itsVericalLength : ini untuk menentukan berapa jumlah grid Vertical yang kita inginkan
itsImagePad : untuk menentukan jeda antara Image
Sekarang kita lihat pada Contructor class nya, perhatikan gambar di bawah.
Pada gambar di atas terdapat angka besar yaitu 1, 2, dan 3 yang menunjukan area kode tertentu. Penjelasan masing masing area adalah,
1 adalah area kode untuk meload file gambar dan meletakannya pada Array yang sudah di sediakan.
2 adalah area kode perhitungan untuk menentukan posisi awal penggambaran menu Grid, perhitungan itu saya buat hanya untuk kondisi pembuatan tutorial ini, anda bisa mencoba berexsperiment sendiri untuk membuat menu pada dimensi yang berbeda.
3 adalah area kode untuk menyimpan posisi awal pada variable initial tersebut.
Selanjutnya adalah proses penggambaran pada method paint() perhatikan gambar dibawah ini,

Pada gambar di atas terdapat angka besar yaitu 1, 2, 3, 4 dan 5 yang menunjukan area kode tertentu. Penjelasan masing masing area adalah,
1 adalah kode untuk membuat background dengan warna yang di cetak pada kode tersebut.
2 adalah kode untuk mereset nilai posisi ke dalam nilai posisi initial.
3 adalah kode untuk penaikan posisi Y untuk melakukan penggambaran pada baris selanjutnya, apabila di temukan panjang dari variable i adalah kelipatan dari variable itsHorisontalLength.
4 adalah kode untuk menggambar area seleksi yang di gambarkan oleh warna pink, yang mengelilingi menu yang di seleksi.
5 adalah kode untuk menggampar Image berdasarkan posisi X dan Y yang sudah di dapat dari kode sebelumnya, lalu menaikan posisi X sesuai dengan lebar Image dan variable itsImagePad.
Untuk selanjutnya adalah method keyPresses() method ini tidak berubah dari tutorial sebelumnya, perhatikan gambar di bawah.
Lalu kita tinggal menampilkan CanvasMenu kita di class Midlet kita seperti gambar di bawah ini.
Semoga tutorial kecil ini bisa berguna, dan kalau ada pertanyaan silahkan masukan di kolom komentar, gw coba jawab sebisa gw.
Kode sumber penuh, J2ME Tutorial, Membuat Menu Grid di Canvas





49 comments:
Java, yah?
Huff... berasa lg kuliah...
puyeeeengg...>,<
Java seh sebetulnya gak terlalu susah.. Cuman kalo mbikin script sendiri ya puyeng dech. hehe
Wow, ternyata ada java developer disini, bravo, simple program yang keren, banyak juga sekarang program memanfaatin rss untuk nge load data, coba bikin dong
@juminten
aku mau kuliah lagi... :p
@elmoudy
lumayan, buat hobby ajah..
@Raffaell
belum developer kok, masih belajar aja, waaah bikin rss reader yah. ribet gak y baca xmlnya
apalagi ini put.. nggak ngerti aja gitu gw...
ahahaha
@Nee
:p ini hoby kalo lagi iseng, sapa tau iseng2 bisa berhadiah
thanks infonya ya
hmmm.. lama saya gak maen2 dengan java... agak bingung logika scriptsnya... :)
@blogger senayan
sama2 mas :)
@ceznez
maaf kalo kurang jelas, saya masih belajar buat nulis tutorial, thnks udah mampir :)
iya neh.. rupanya ada developer di sini...
keren2... ntar aku bilangin ke tmn2 biar mereka bikinin buat aku.. hehehehehe...
oya, saya ferdi, salam kenal ya...
klw ada waktu booeh kok ke blog aku... Hheheee...
^_^
@Ferdi
salam kenal juga, pasti mampir kok :)
salam kenal...
mas... punya tutorial ttg system unified messaging kah....
aku lg TA ttg pembangunan aplikasi unified messaging pake java butuh byk sekali referensi....
makasiiiiiiiihhh y mas
@lany
btw unified messaging itu apa yah, saya belum pernah denger, maaf
Mas kalo mau buat game pertanyaan supaya pertanyaannya&jwbannya bsa random gmn mas????tlong bntuannya dnk mas!!!!
klo pnya ptunjuk krim ke email saya
adang_speed@yahoo.co.id
@anonim
buat array pertanyaaan, lalu keluarkan dari melalui index yang dapat dari nilai random, sesuai dengan jumlah arraynya, sukses
unified messaging... aplikasi berbagai messaging yang disatukan dalam sebuah sistem yang terdistribusi mas,,,, contoh realnyah "notebox" yg di ITB...:p
hmmm belum kebayang :p
ada contohnya produk yg uda tersebar luas gak, apa sama aja kayak, ym, gtalk, skype dan kawan2nya
Gue bingung nich,cara mendaftar facebook,pendaftaran hrs mengsi alamat email.sdgkn gue blm pya email.gue sh kepengnya punya email,tp nyetinya gmna.dear fauzy.cahbumen.soka poncowarno
heuheuheu..... iyah,,, salah satunyah aplikasi ituh juga ada mas... jadi aplikasi sms,mms,IM,fax,voice mail bisa diakses dalam satu system,,,,:p
begituh mas..... ceritanyah waktu seminar TA belagu ngambil tema itu (jatuh cinta ma aplikasi notebox "ITB") padahal belum menguasai betulll.... sekarang kelimpungan nyari tutor...hehehehehe
@anonim
bikin email bisa di mail.google.com atau ke mail.yahoo.com, semoga berhasil
@lany
ooow... aplikasi yg gabungin semua jenis kominikasi.. kebayang sie, cuma yg banyak kerja di server sidenya tuh, okay moga sukses yah
hehe....
iyaahhh mas begitulahhh... puyeng,,,:-)
makasiyyhh mas.....
menarik nih... kebetulan saya sedang membuat tugas skripsi membuat game TTS dengan J2ME. Saya tidak begitu mengerti dengan pembuatan grid ataupun paint untuk tampilan TTS... Ada yang bisa bantu?? Terutama untuk logika/ algoritma pembuatan gridnya..
oh, lupa skalian email...
ragunan_raya@yahoo.com
jdi bisa chatting...^V^
mba puput minta file pdfnya dong tentang belajar membuat aplikasi java kirim ke email ku ya kurni.kurniawan886@gmail.com
@lany
iya mbak, sama2 .. semoga sukses yah
@Erie(nickname)
kalau saya kepikiran pake gambar garis berdasarkan dimensi yang kita tentukan, trus ada array kumpulan dari 1 dan 0 untuk menentukan hitam dan putih kotak dari TTS itu.
@Erie(nickname)
kebetulan saya pake Gtalk add aja di blog@puputs.com, terima kasih
@Anonim
kebetulan saya gak punya pdfnya, paling cuma di blog aja :p, maaf yah
buat tutor tutor j2me lagi dunk...
makasi lo tutornya.... bagus bener
@anonim
iya kalau lagi dapet libur saya buat lagi :), terima kasih banyak.
mas puputs, mau nanya neeh, saya sudah coba copy sourcenya. tapi ketika di RUN, kok gak muncul menunya ya? Blank gitu. kenapa ya?
salam kenal mas puput.boleh ikutan nanya ya, kalo di canvas cara ngasih actionnya gimana ya? misalnya:dari contoh yang maz buat itu,setelah di run, icon gambarnya di klik bisa meluncur ke form yang lain gitu.caranya gimana ya?
soalnya kebanyakan yang saya dapat actionnya hanya menampilkan tulisan saja,bukan nge-link ke form lain.
terima kasih....
@anti: saya coba sourcenya itu kok gak jalan ya?. saya pakai Netbean IDE 6.8. maklum neeh newbie :D
@Anonim: bisa kok!ga jalannya gimana? pesan errornya apa?
coba download link yang "kode sumber penuh..." di atas.kalo sudah,coba buat dua midlet di satu project.selamat mencoba.... :)
@anti
untuk pindah ke form lain,
kamu bikin class turunan Displayable dulu, Canvas atau Form, kalo udah jadi, kamu setDisplay() nya. pada saat action itu di pilih,
jangan lupa referensi Midlet kamu bawa juga di class yang ada actionnya.
thanks,
@anonim
bisa tau muncul error apa,
iya maz,terima kasih.ternyata sudah bisa... cuma rada bingung.saya nyobanya pake midlet(di netbeans),mau saya pindah ke visual midlet kok rada susah ya codingnya??? bisa bantu ga?thanks,
Mas mau tanya nih.. Cara nambahin keypressednya untuk yang arah kanan dan kiri gimana?
Saya udah coba nambahin koding sperti di bawah :
} else if (getGameAction(keyCode) == RIGHT) {
statCursor = statCursor + 1;
if (statCursor == arrImageMenu.length) {
statCursor = 0;
}
} else if (getGameAction(keyCode) == LEFT) {
statCursor = statCursor - 1;
if (statCursor == arrImageMenu.length) {
statCursor = 0;
}
tapi yang ada kanan-kirinya berfungsi tapi gerakannya sama aja kaya gerakan atas-bawah..
thanx before :)
@ilmu mutiara
untuk kanan kiri, kamu harus liat dari menu yg terbentuk, seandainya menu yg tergambar dari index spt dibawah,
[0][1]
[2][3]
kamu harus liat, kalo posisi di [2] di pencet kanan maka akan nambah 1 yaitu [3], kalo di pencet kanan lagi akan lari ke [2], dari pola seperti itu, tinggal km buat kodenya deh :), semoga berhasil
owh.. ok2.. makasih banyak ya bagi2 ilmunya.. terus posting j2me dan BB :>
Mas....saya mau menanyakan pertanyaan yang dah di tanyaain.
hehehehe
gimana caranya bila salah satu menu di klik trus muncul menu form yang dipilih(muncul form baru)?
saya udah coba pake displayable, tapi ga bisa..
kasih contoh lengkapnya dong untuk aktion pemanggilan untuk memunculkan form baru jika salah satu menu di pilih...plis banget..urgent neh..hehehe
tq mas...
@ilmu
sama2 thanks juga,
@anonim
saat ini belum memungkinkan bikin tutorial lengkap, tapi kalo dari kamy liat source code mario air kamu bisa perhatikan, di sana kan ada menu juga, kamu bisa oprek2 pada saat saya klik.. saya akan melakukan setDisplayable pada Casvas atau Form, yg penting itu turunan dari Displayable.. maaf blom bisa bantu banyak
Maaf mas saya mau tanya, gmn ya sourcecodenya untuk pengambilan data, misal dalam mms kan bisa ambil gambar, audio ma video kayak gitu gmn ya mas. penasaran lom bisa2 soalnya? hehe....
Mas saya mau tanya...
knp audio wav saya hanya bisa memutar hinggal 17 saja. setelah itu suara tidak dapat berfungsi(tidak terdengar),
jika mas ingin membantu saya mohon kirim lwt email q saja..
dropsis@yahoo.co.id
mas mau tanya ni...klo mau buat link dari masing - masing menu gimana...
@cari ilmu
wah maaf saya juga lom pernah mainin mms :), sory
@dropsis
maksudnya 17 menit atau gimana, jangan2 file audionya yang error :p
@kadexius
kalo mau buat link, kamu harus setDisplayable masing2 screen yang ingin kamu tampilkan, di masing2 link/tombol yg kamu buat
maap numpang nanya,klo nambah tulisan biar pas dibawah gambar gmn ya?mhon bantuananya ya..mksh sblmnya.
@anonim
untuk itu kamu ambil posisi Y dari gambarnya, trus kamu tambah sama tinggi dari gambarnya, dan kamu akan dapet posisi Y persis dibawah gambar...
trimaksih mas utk text dbwh gambar udah jadi,skrg klo nambahin jarak antar gambar gmn mas?mksh..maap anya trus cz newbie nich hehehe
mkasih mas,text dibawh gambarnya dah jd,klo mo nambah jarak antar gambar gmn mas?maap nanya trus..hehehehe
mas cara ambil digambar yg dipilih agar isa masuk ke menu berikutnya itu berdasarkan apa ya utk mengatur diplayblenya?mhn bantuan.thx
@anonim
untuk gap/jarak bisa coba2 aja, tes Y nya di tambah 10 ata 5, atau ambil Height dari Font yang kamu pake kalo kamu jarak sebesar Font kamu..
untuk ambil menentukan kayar yg du tampilkan kamu bisa memakai acua statCursor kalo dari kode di atas, kamu jadi bisa menentukan index mana cursoor itu berada..
bang puput,,saya mw nnya...
gmna cranya biar kalo running canvas grid menuny,, mw nymbung ke canvas lain,,?
misal,,kalo grid 1 dklik,,nymbung menu canvas yang ini "j2me-tutorial-membuat-menu-di-canvas",,
saya udh nyoba2,,tpi gag mw2..
mohon bntuanny,,terima kasih..
mohon komentar,,ato email ke goesdek@gmail.com
Poskan Komentar