Senin, 10 Desember 2012

Konverter Suhu berbasis Java Mobile

Pada saat ini saya akan mencoba menampilkan pekerjaan saya, kali ini saya membuat aplikasi converter / alat hitung Temperatur menggunakan Java untuk Mobile.

berikut tampilan halaman utamanya :

Ada 3 buah Field yang dapat  kita isi, masing masing 
berisikan Celcius, Reamur, dan Fahrenheit.


Maka akan keluar Form baru seperti berikut :


Seperti itu lah kira kira program yang dapat saya buat, sangat simple dan mudah digunakan
Jika anda tertarik anda dapat melihat skrip berikut:

Skrip
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/

package hello;

import javax.microedition.lcdui.Command;
import javax.microedition.lcdui.CommandListener;
import javax.microedition.lcdui.Display;
import javax.microedition.lcdui.Displayable;
import javax.microedition.lcdui.Form;
import javax.microedition.lcdui.StringItem;
import javax.microedition.lcdui.TextField;
import javax.microedition.midlet.*;

/**
* @author Heaven
*/
public class ConverterSuhu extends MIDlet implements CommandListener{
Display disp;
Form frmInput, frmHasil;
StringItem strCelcius, strFahrenheit, strReamur, strHasil;
TextField txtCelcius, txtFahrenheit, txtReamur;
Command cmdExit, cmdHitung, cmdKembali;
public ConverterSuhu(){
frmInput = new Form("Input Satuan Suhu");
frmHasil = new Form("Hasil");

strCelcius = new StringItem("","CELCIUS", StringItem.PLAIN);
txtCelcius = new TextField("","",30, TextField.NUMERIC);

strFahrenheit = new StringItem("","FAHRENHEIT", StringItem.PLAIN);
txtFahrenheit = new TextField("","",30, TextField.NUMERIC);

strReamur = new StringItem("","REAMUR", StringItem.PLAIN);
txtReamur = new TextField("","",30, TextField.NUMERIC);

cmdExit = new Command("Keluar",Command.EXIT, 0);
cmdHitung = new Command("Hitung",Command.OK, 1);

frmInput.append(strCelcius);
frmInput.append(txtCelcius);
frmInput.append(strFahrenheit);
frmInput.append(txtFahrenheit);
frmInput.append(strReamur);
frmInput.append(txtReamur);

frmInput.addCommand(cmdExit);
frmInput.addCommand(cmdHitung);
frmInput.setCommandListener(this);
}
public void startApp() {
disp = Display.getDisplay(this);
disp.setCurrent(frmInput); }

public void hitungSuhu(){
frmHasil = new Form("Hasil Perhitungan");
int celcius , fahrenheit , reamur;
if(!txtCelcius.getString().equals("")){
celcius = Integer.parseInt(txtCelcius.getString());
fahrenheit = ((celcius)*9/5+32);
reamur = (celcius*4/5);

strHasil = new StringItem("","",StringItem.PLAIN);
strHasil.setText("Fahrenheit = "+fahrenheit+"\nReamur = "+reamur);

}

else if(!txtFahrenheit.getString().equals("")){
fahrenheit = Integer.parseInt(txtFahrenheit.getString());
celcius = ((fahrenheit-32)*5/9);
reamur = ((fahrenheit-32)*4/9);

strHasil = new StringItem("","",StringItem.PLAIN);
strHasil.setText("Celcius = "+celcius+"\nReamur = "+reamur);
}

else if(!txtReamur.getString().equals("")){
reamur = Integer.parseInt(txtReamur.getString());
celcius = ((reamur)*5/4);
fahrenheit = (((reamur)*9/4)+32);

strHasil = new StringItem("","",StringItem.PLAIN);
strHasil.setText("Celcius = "+celcius+"\nFahrenheit = "+fahrenheit);
}

cmdKembali = new Command("Kembali", Command.BACK, 1);
frmHasil.append(strHasil);
frmHasil.addCommand(cmdKembali);
frmHasil.setCommandListener((CommandListener) this);

disp.setCurrent(frmHasil);
}

public void pauseApp() {
}

public void destroyApp(boolean unconditional) {
}

public void commandAction(Command c, Displayable d) {
if(d == frmInput){
if(c == cmdHitung){
hitungSuhu();
}
else if(c == cmdExit){
destroyApp(true);
notifyDestroyed();
}
}else{
if(c == cmdKembali){
disp.setCurrent(frmInput);
}
}
}
}

0 komentar: