Membuat Program Konversi Suhu dengan Java Menggunakan NetBeans (Mobile Programming)
Selamat pagi sobat astronaut semua! Kali ini kita akan membahasa sebuah program, yaitu program konversi suhu yang dibuat dengan bahasa pemrograman Java, menggunakan NetBeans IDE.
Ok, langsung saja, berikut source code-nya :
/*
* 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 www.astronaut11.blogspot.com
*/
public class KonversiSuhu extends MIDlet implements CommandListener {
//inisialisasi
Display dis;
Form frminput, frmhasil;
StringItem strCelcius,strFahreinheit,strReamur,strKelvin,strhasil;
TextField txtCelcius, txtFahreinheit, txtReamur, txtKelvin;
Command cmdExit, cmdhitung, cmdkembali;
public KonversiSuhu()
{
// judul pada form input
frminput = new Form("Pilihan Satuan Suhu");
//membuat label dan text field celcius
strCelcius = new StringItem("" ,"Celcius", StringItem.PLAIN);
txtCelcius = new TextField("", "", 30,TextField.NUMERIC);
//membuat label dan text field fahrenheit
strFahreinheit = new StringItem("" ,"Fahreinheit", StringItem.PLAIN);
txtFahreinheit = new TextField("", "", 30,TextField.NUMERIC);
//membuat label dan text field reamur
strReamur = new StringItem("" ,"Reamur", StringItem.PLAIN);
txtReamur = new TextField("", "", 30,TextField.NUMERIC);
//membuat label dan text field kelvin
strKelvin = new StringItem("" ,"Reamur", StringItem.PLAIN);
txtKelvin = new TextField("", "", 30,TextField.NUMERIC);
//membuat command exit dan hitung
cmdExit = new Command("Keluar [X]", Command.EXIT, 0);
cmdhitung = new Command("Hitung", Command.OK,1);
//menampilkan label dan text field
frminput.append(strCelcius);
frminput.append(txtCelcius);
frminput.append(strFahreinheit);
frminput.append(txtFahreinheit);
frminput.append(strReamur);
frminput.append(txtReamur);
frminput.append(strKelvin);
frminput.append(txtKelvin);
//menampilkan command
frminput.addCommand(cmdExit);
frminput.addCommand(cmdhitung);
frminput.setCommandListener((CommandListener) this);
}
public void startApp() {
if(dis == null)
{
// menampilkan frminput pada saat aplikasi dimulai
dis = Display.getDisplay(this);
dis.setCurrent(frminput);
}
}
public void hitungSuhu(){
if(!txtCelcius.getString().equals(""))
{
//judul frmhasil celcius
frmhasil = new Form("Hasil Konversi dari Celcius");
//proses perhitungan celcius
double celcius = Double.parseDouble(txtCelcius.getString());
double fahrenheit = ((celcius)*9/5+32);
double reamur = (celcius*4/5);
double kelvin = (celcius+273);
//tampil hasil perhitungan celcius
strhasil = new StringItem("","",StringItem.PLAIN);
strhasil.setText("Celcius ke Fahrenheit = "+fahrenheit+"\nCelcius ke Reamur = "+reamur+"\nCelcius ke Kelvin = "+kelvin);
}
else if(!txtFahreinheit.getString().equals(""))
{
//judul frmhasil fahrenheit
frmhasil = new Form("Hasil Konversi dari Fahrenheit");
//proses perhitungan fahrenheit
double fahrenheit = Double.parseDouble(txtFahreinheit.getString());
double celcius = ((fahrenheit-32)*5/9);
double reamur = ((fahrenheit-32)*4/9);
double kelvin = ((fahrenheit-32)*5/9+273);
//tampil hasil perhitungan fahrenheit
strhasil = new StringItem("","",StringItem.PLAIN);
strhasil.setText("Fahrenheit ke Celcius = "+celcius+"\nFahrenheit ke Reamur = "+reamur+"\nFahrenheit ke Kelvin = "+kelvin);
}
else if(!txtReamur.getString().equals(""))
{
//judul frmhasil reamur
frmhasil = new Form("Hasil Konversi dari Reamur");
//proses perhitungan reamur
double reamur = Double.parseDouble(txtReamur.getString());
double celcius = ((reamur)*5/4);
double fahrenheit = (((reamur)*9/4)+32);
double kelvin = (((reamur)*5/4)+273);
//tampil hasil perhitungan reamur
strhasil = new StringItem("","",StringItem.PLAIN);
strhasil.setText("Reamur ke Celcius = "+celcius+"\nReamur ke Fahrenheit = "+fahrenheit+"\nReamur ke Kelvin = "+kelvin);
}
else if(!txtKelvin.getString().equals(""))
{
//judul frmhasil kelvin
frmhasil = new Form("Hasil Konversi dari Kelvin");
//proses perhitungan kelvin
double kelvin = Double.parseDouble(txtKelvin.getString());
double celcius = (kelvin-273);
double fahrenheit = ((kelvin-273)*9/5);
double reamur = ((kelvin-273)*4/5);
//tampil hasil perhitungan kelvin
strhasil = new StringItem("","",StringItem.PLAIN);
strhasil.setText("Kelvin ke Celcius = "+celcius+"\nKelvin ke Fahrenheit = "+fahrenheit+"\nKelvin ke Reamur = "+reamur);
}
//menampilkan command dan hasil perhitungan
cmdkembali = new Command("<< Kembali", Command.BACK, 1);
frmhasil.append(strhasil);
frmhasil.addCommand(cmdkembali);
frmhasil.setCommandListener((CommandListener) this);
//frmhasil ditampilkan
dis.setCurrent(frmhasil);
}
public void pauseApp() {
}
public void destroyApp(boolean unconditional) {
}
public void commandAction(Command cm, Displayable dply){
//tampil command dan hasil sesuai kondisi
if(dply == frminput)
{
if(cm == cmdhitung)
{
hitungSuhu();
}
else if(cm == cmdExit)
{
destroyApp(true);
notifyDestroyed();
}
}
else
{
if(cm == cmdkembali)
{
dis.setCurrent(frminput);
}
}
}
}
Disini saya sertakan video tutorialnya, tapi jujur saya akui kualitasnya jauh dari kata bagus, karena saya menggunakan webcam dari laptop (cuma VGA hahaha), jadi bagi yang mau sekedar melihat silahkan, bagi yang tidak mau juga tidak apa-apa hahahhaa, thank you para astronaut! :D
Ok, langsung saja, berikut source code-nya :
/*
* 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 www.astronaut11.blogspot.com
*/
public class KonversiSuhu extends MIDlet implements CommandListener {
//inisialisasi
Display dis;
Form frminput, frmhasil;
StringItem strCelcius,strFahreinheit,strReamur,strKelvin,strhasil;
TextField txtCelcius, txtFahreinheit, txtReamur, txtKelvin;
Command cmdExit, cmdhitung, cmdkembali;
public KonversiSuhu()
{
// judul pada form input
frminput = new Form("Pilihan Satuan Suhu");
//membuat label dan text field celcius
strCelcius = new StringItem("" ,"Celcius", StringItem.PLAIN);
txtCelcius = new TextField("", "", 30,TextField.NUMERIC);
//membuat label dan text field fahrenheit
strFahreinheit = new StringItem("" ,"Fahreinheit", StringItem.PLAIN);
txtFahreinheit = new TextField("", "", 30,TextField.NUMERIC);
//membuat label dan text field reamur
strReamur = new StringItem("" ,"Reamur", StringItem.PLAIN);
txtReamur = new TextField("", "", 30,TextField.NUMERIC);
//membuat label dan text field kelvin
strKelvin = new StringItem("" ,"Reamur", StringItem.PLAIN);
txtKelvin = new TextField("", "", 30,TextField.NUMERIC);
//membuat command exit dan hitung
cmdExit = new Command("Keluar [X]", Command.EXIT, 0);
cmdhitung = new Command("Hitung", Command.OK,1);
//menampilkan label dan text field
frminput.append(strCelcius);
frminput.append(txtCelcius);
frminput.append(strFahreinheit);
frminput.append(txtFahreinheit);
frminput.append(strReamur);
frminput.append(txtReamur);
frminput.append(strKelvin);
frminput.append(txtKelvin);
//menampilkan command
frminput.addCommand(cmdExit);
frminput.addCommand(cmdhitung);
frminput.setCommandListener((CommandListener) this);
}
public void startApp() {
if(dis == null)
{
// menampilkan frminput pada saat aplikasi dimulai
dis = Display.getDisplay(this);
dis.setCurrent(frminput);
}
}
public void hitungSuhu(){
if(!txtCelcius.getString().equals(""))
{
//judul frmhasil celcius
frmhasil = new Form("Hasil Konversi dari Celcius");
//proses perhitungan celcius
double celcius = Double.parseDouble(txtCelcius.getString());
double fahrenheit = ((celcius)*9/5+32);
double reamur = (celcius*4/5);
double kelvin = (celcius+273);
//tampil hasil perhitungan celcius
strhasil = new StringItem("","",StringItem.PLAIN);
strhasil.setText("Celcius ke Fahrenheit = "+fahrenheit+"\nCelcius ke Reamur = "+reamur+"\nCelcius ke Kelvin = "+kelvin);
}
else if(!txtFahreinheit.getString().equals(""))
{
//judul frmhasil fahrenheit
frmhasil = new Form("Hasil Konversi dari Fahrenheit");
//proses perhitungan fahrenheit
double fahrenheit = Double.parseDouble(txtFahreinheit.getString());
double celcius = ((fahrenheit-32)*5/9);
double reamur = ((fahrenheit-32)*4/9);
double kelvin = ((fahrenheit-32)*5/9+273);
//tampil hasil perhitungan fahrenheit
strhasil = new StringItem("","",StringItem.PLAIN);
strhasil.setText("Fahrenheit ke Celcius = "+celcius+"\nFahrenheit ke Reamur = "+reamur+"\nFahrenheit ke Kelvin = "+kelvin);
}
else if(!txtReamur.getString().equals(""))
{
//judul frmhasil reamur
frmhasil = new Form("Hasil Konversi dari Reamur");
//proses perhitungan reamur
double reamur = Double.parseDouble(txtReamur.getString());
double celcius = ((reamur)*5/4);
double fahrenheit = (((reamur)*9/4)+32);
double kelvin = (((reamur)*5/4)+273);
//tampil hasil perhitungan reamur
strhasil = new StringItem("","",StringItem.PLAIN);
strhasil.setText("Reamur ke Celcius = "+celcius+"\nReamur ke Fahrenheit = "+fahrenheit+"\nReamur ke Kelvin = "+kelvin);
}
else if(!txtKelvin.getString().equals(""))
{
//judul frmhasil kelvin
frmhasil = new Form("Hasil Konversi dari Kelvin");
//proses perhitungan kelvin
double kelvin = Double.parseDouble(txtKelvin.getString());
double celcius = (kelvin-273);
double fahrenheit = ((kelvin-273)*9/5);
double reamur = ((kelvin-273)*4/5);
//tampil hasil perhitungan kelvin
strhasil = new StringItem("","",StringItem.PLAIN);
strhasil.setText("Kelvin ke Celcius = "+celcius+"\nKelvin ke Fahrenheit = "+fahrenheit+"\nKelvin ke Reamur = "+reamur);
}
//menampilkan command dan hasil perhitungan
cmdkembali = new Command("<< Kembali", Command.BACK, 1);
frmhasil.append(strhasil);
frmhasil.addCommand(cmdkembali);
frmhasil.setCommandListener((CommandListener) this);
//frmhasil ditampilkan
dis.setCurrent(frmhasil);
}
public void pauseApp() {
}
public void destroyApp(boolean unconditional) {
}
public void commandAction(Command cm, Displayable dply){
//tampil command dan hasil sesuai kondisi
if(dply == frminput)
{
if(cm == cmdhitung)
{
hitungSuhu();
}
else if(cm == cmdExit)
{
destroyApp(true);
notifyDestroyed();
}
}
else
{
if(cm == cmdkembali)
{
dis.setCurrent(frminput);
}
}
}
}
Disini saya sertakan video tutorialnya, tapi jujur saya akui kualitasnya jauh dari kata bagus, karena saya menggunakan webcam dari laptop (cuma VGA hahaha), jadi bagi yang mau sekedar melihat silahkan, bagi yang tidak mau juga tidak apa-apa hahahhaa, thank you para astronaut! :D
Wah ternyata panjang juga ya mas. Tapi lengkap dan aku suka. :v Hehe... Izin praktik ya mas. Wah jadi terinpirasi untuk menulis di blog dengan tema java juga nih. Thanks mas.
BalasHapus