Bermain Graphic dengan J2ME

Posted in: Knowledge by krisnarengga on June 1, 2009

j2me

Berikut ini gw kasih sample script J2ME buat testing graphics di j2me.  Ada dua file java yg akan dibuat yaitu MyCanvas.java dan scrCanvas.java .  Selamat mencoba

Di bawah ini script MyCanvas.java

import javax.microedition.midlet.*;

import javax.microedition.lcdui.*;

public class MyCanvas extends MIDlet implements CommandListener{

private Display display = null;

private scrCanvas scrCanvasObj = null;

private Command exit = new Command(“EXIT”,Command.EXIT,1);

private Command fullScreen = new Command(“Full Screen”,Command.OK,1);

public MyCanvas()

{

scrCanvasObj = new scrCanvas();

scrCanvasObj.addCommand(exit);

scrCanvasObj.addCommand(fullScreen);

scrCanvasObj.setCommandListener(this);

}

public void startApp() {

if(display == null)

{

display = Display.getDisplay(this);

display.setCurrent(scrCanvasObj);

}

}

public void pauseApp() {

}

public void destroyApp(boolean unconditional) {

}

public void commandAction(Command c,Displayable d)

{

if(c == exit)

{

notifyDestroyed();

destroyApp(true);

}

else if(c == fullScreen)

{

scrCanvasObj.setFullScreenMode(true);

}

}

}

Di bawah ini script scrCanvas.java

import javax.microedition.lcdui.*;

public class scrCanvas extends Canvas implements Runnable{

private int x = 0,y = 0;

private int ax = 1,ay = 1;

public scrCanvas()

{

Thread thread = new Thread(this);

thread.start();

}

private void backgroundHitam(Graphics g)

{

g.setColor(0x000000);

g.fillRect(0, 0, this.getWidth(), this.getHeight());

}

private void kotak(Graphics g)

{

g.setColor(0xff0000);

g.fillRect(x,y, 25,25);

}

private void tulisString(Graphics g)

{

g.setColor(0x00ff00);

g.drawString(“Contoh Canvas”, 1, 1, Graphics.LEFT | Graphics.TOP);

}

private void rubahPosisiKotak()

{

x+=ax;

y+=ay;

if(x<=0 || x+25>=this.getWidth())

ax*=-1;

if(y<=0 || y+25>=this.getHeight())

ay*=-1;

}

public void paint(Graphics g)

{

backgroundHitam(g);

tulisString(g);

kotak(g);

}

public void run()

{

while(true)

{

repaint();

rubahPosisiKotak();

try

{

Thread.sleep(1);

}

catch(Exception e)

{

e.printStackTrace();

}

}

}

}

Apabila ada kesalahan tolong comment disini ^_^

Rich Application dengan EXT-GWT

Posted in: Knowledge by krisnarengga on June 1, 2009

java

Alo alo akhirnya gw balik lagi bisa nulis blog ini setelah sekian lama tenggelam buat persiapan sidang skripsi hehehe.  Disini gw mo sharing aja tentang penggunaan teknologi bernama EXT-GWT untuk membuat aplikasi web yg bersifat “Rich Application” kayak model desktop gitu.  Mungkin sharing ini banyak berguna buat para developer web di luar sana.

Oke sebelumnya apa sih sebenernya “Rich Application” ato “Rich Internet Application” itu.  Sekarang ini para developer cenderung (menurut pribadi) membangun aplikasi berbasis web,  karena aplikasi sifatnya tersentral dan memiliki fleksibilitas tinggi (based on network).  Nah semakin pesatnya pengembangan teknologi web saat ini ada sedikit muncul pemikiran kira2 apakah bisa aplikasi desktop itu dipindahkan ke basis web atau web yg memiliki kesan yg mirip dengan desktop.  Nah dengan kemudian muncullah istilah “Rich Application” dimana aplikasi2 web yg dibangun memiliki look and feel layaknya aplikasi desktop.  Dengan pesatnya perkembangan teknologi Asynchronous Javascript And XML ato yg biasa disebut dengan AJAX, maka aplikasi web dapat melakukan request dan respon dengan cepat ke server layaknya desktop.  Ya dapat disimpulkan “Rich Application” biasanya adalah web yg memiliki Look And Feel seperti desktop application.

Nah bagaimana kita bisa membangun web yg bersifat Rich Application ini.  Hal ini bisa dibuat secara manual contoh dengan menggunakan javascript ato kalo .NET bisa menggunakan Silverlight  ato di java bisa menggunakan Java FX dimana ada virtualisasi.

Nah baru2 ini gw sedang mengadakan riset di area Rich Application dengan menggunakan teknologi Java (maklum orang open source)  hehehe.  Salah satu framework yg dipakai bernama EXT-GWT.  EXT-GWT sebenarnya adalah pengembangan lebih lanjut dari teknologi GWT (Google Web Toolkit).  Nah enaknya menggunakan framework EXT-GWT ini adalah kita tidak perlu mengetik code javascript secara manual dan membuat tampilan desktop dari awal karena framework ini akan men-generate code javascript dari code java dan telah disediakan UI desktop dan fitur HttpRequest yg memungkinkan request secara asynchronous (AJAX).

Untuk menggunakan framework ini dibutuhkan software2 antara lain :

1. Download dan install JAVA SDK 1.6 update 12 dari link ini http://java.sun.com/javase/downloads/index.jsp

2. Download dan Install Eclipse IDE dari link ini http://www.eclipse.org/downloads/

3. Download GWT dari link ini http://code.google.com/webtoolkit/download.html

4. Download EXT-GWT SDK dari link ini http://extjs.com/products/gxt/download.php

5. Ikuti video tutorial setup (Getting Started Screencast) dari link ini http://extjs.com/helpcenter/index.jsp

Dibawah ini adalah screenshot dari ext-gwt
ext-gwt 1

ext-gwt2

Kalo ada yg salah and kurang2 silahkan comment postingan gw ^_^V.  Maju terus Java Indonesia 😀

Command dan Alert di J2ME

Posted in: Knowledge by krisnarengga on June 1, 2009


Command Class merepresentasikan aksi terhadap suatu informasi yang ditampilkan. Command identik dengan button pada pemrograman aplikasi di platform yang lain. Behavior atau aksi yang akan dilakukan apabila command di invoke tidak didefinisikan pada method dari objek ini, tetapi akan didefinisikan pada method commandAction pada interface CommandListener. Class Command memiliki beberapa tipe antara lain BACK, CANCEL, EXIT, HELP, ITEM, OK, SCREEN dan STOP. Command Class juga memiliki tingkat prioritas yang menunjukkan hierarki dari objek command. Berikut merupakan listing program pengimplementasian objek dari Class Command dan objek dari Class Alert dengan tipe alert alarm, alert confirmation, alert error, alert info dan alert warning.
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
import javax.microedition.midlet.*;
import javax.microedition.lcdui.*;
/**
* @author Krisna Rengga Buana
*/
public class MyCommand extends MIDlet implements CommandListener {
private Display display = null;
private Form form = null;
private Command exit = null;
private Command [] item = null;
private Alert alert = null;
public MyCommand()
{
form = new Form(“My Command”);
exit = new Command(“Exit”,Command.EXIT,1);
item = new Command[5];
for(int i=0;i<item.length;i++)
{
item[i] = new Command(“Item “+(i+1),Command.ITEM,1);
form.addCommand(item[i]);
}
form.addCommand(exit);
form.setCommandListener(this);
}
public void startApp() {
if(display == null)
{
display = Display.getDisplay(this);
display.setCurrent(form);
}
}
public void pauseApp() {
}
public void destroyApp(boolean unconditional) {
}
public void commandAction(Command c,Displayable d)
{
if(c == exit)
{
notifyDestroyed();
destroyApp(true);
}
else if(c == item[0])
{
alert = new Alert(“Alarm”,”Ini command item 1, Tipe Alert Alarm”,null,AlertType.ALARM);
display.setCurrent(alert);
}
else if(c == item[1])
{
alert = new Alert(“Confirmation”,”Ini command item 2, Tipe Alert Confirmation”,null,AlertType.CONFIRMATION);
display.setCurrent(alert);
}
else if(c == item[2])
{
alert = new Alert(“Error”,”Ini command item 3, Tipe Alert Error”,null,AlertType.ERROR);
display.setCurrent(alert);
}
else if(c == item[3])
{
alert = new Alert(“Information”,”Ini command item 4, Tipe Alert Info”,null,AlertType.INFO);
display.setCurrent(alert);
}
else if(c == item[4])
{
alert = new Alert(“Warning”,”Ini command item 5, Tipe Alert Warning”,null,AlertType.WARNING);
display.setCurrent(alert);
}
}
}
ini link source code nya 😛
http://www.kitaupload.com/download.php?file=16MyCommand.rar
Newer Posts »