Aplikasi Tiket Kapal Ferry Pelabuhan Merak
Aplikasi Tiket Kapal Ferry Pelabuhan Merak
Assalamualaikum Wr.Wb
Nama : Marko Hadi
Irawan
Nim :
161021450147
Saya ingin
sedikit menjelaskan sedikit tentang cara membuat Aplikasi Tiket Kapal Ferry Pelabuhan
Merak menggunakan Java NetBeans.
Deskripsi aplikasi: User dihadapkan dengan pilihan menu, lalu
User menginput data nama, Nomor Identitas(KTP/SIM), Tanggal Lahir, Jenis Tiket,
dan Jumlah Tiket menu yang diinginkan, jika telah selesai maka klik tombol
total maka akan muncul berapa yang harus dibayarkan. jika ingin membeli lagi
maka tinggal klik Tombol Mulai.
Rumus aplikasi :
harga barang * jumlah Tiket yang dipilih.
Tutorial Membuat Project Baru :
1.
Flowchart
Flowchart
1. Jalankan Java NetBeans
Buka Program Netbeans IDE yang sudah terinstall di PC.
Klik File –> New Project atau icon 1
Pilih kategori Java, dan project Java Application
Lalu klik Next >
Ganti Nama Project menjadi Tiket Kapal Ferry Pelabuhan Merak
(atau sesuka kalian)
Tips: Untuk project name saya sarankan TIDAK menggunakan
spasi.
Lokasi project simpanlah di folder yang aman dan nyaman.
Klik Finish
Project baru telah selesai dibuat.
Setelah membuat project baru, selanjutnya adalah mendesain
tampilan yang akan kita buat.
Klik kanan pada package –> New –> JFrame
Form.
Isi nama kelas (Class Name) dengan AplikasiTiketKapalFerry Pelabuhan
Merak
Tidak boleh ada spasi di nama kelas.
Lalu klik Finish.
Project baru telah selesai dibuat.
Setelah membuat project baru, selanjutnya adalah mendesain
tampilan yang akan kita buat.
Mendesain Tampilan Aplikasi
Sekarang adalah saatnya mendesain tampilan AplikasiTiketKapalFerryPelabuhanMerak.java. Cukup drag and drop dari window pallete (Window –>
Pallete) yang berada di kanan layar ke dalam AplikasiTiketKapalFerry Pelabuhan
Merak kita.
Pertama drag Label yang ada di kanan layar
Swing Controls -> Label (Drag lalu drop ke kiri layar), geser kiri kanan
bawah atas panjang lebar dan buatlah desain dibawah ini :
Selanjutnya ganti teks dan nama variabel komponen Label
Caranya:
klik kanan pada komponen yang akan di modif Jlabel –> Edit
Text (untuk mengubah teks yang tampil).
Kedua ganti teks dan nama variabel komponen Text
Field caranya :
klik kanan pada komponen yang akan di modif JTextField –>
Edit Text (untuk mengubah teks yang tampil) –> Delete dan klik kanan lagi pada
komponen yang akan di modif lalu pilih Change Variable Name (Untuk mengubah
nama variabel komponen) –> Ganti menjadi:
Nama: TxtNama
Nomor Id: TxtNoId
Harga Tiket: TxtHarga
Jumlah Tiket: TxtJumlah
Total Harga Tiket: TxtTotal
Ketiga ganti teks dan nama variabel komponen
ComboBox caranya:
klik kanan pada komponen yang akan di modif lalu pilih
Change Variable Name (Untuk mengubah nama variabel komponen) –> Ganti
menjadi:
Tanggal: ComboBoxTgl
Bulan: ComboBoxBln
Tahun: ComboBoxThn
Lalu Klik Kanan disetiap ComboBox -> Properties ->
Model -> Tambahkan angka untuk Tanggal, Bulan dan Tahun yang di Butuhkan.
Selanjutnya masukkan codingnya, caranya:
Klik Kanan pada setiap ComboBox -> Events -> Action
-> actionPerformed, lalu masukkan codingnya sesuai coding di bawah ini:
for(int CmbBoxTgl=1; CmbBoxTgl<=31; CmbBoxTgl++){
System.out.println(CmbBoxTgl);
Keempat ganti teks dan nama variabel komponen RadioButton
caranya:
klik kanan pada komponen yang akan di modif JRadioButton
–> Edit Text (untuk mengubah teks yang tampil) –> ganti sesuai gambar
diatas dan klik kanan lagi pada komponen yang akan di modif lalu pilih Change
Variable Name ( Untuk mengubah nama variabel komponen ) menjadi:
Ekonomi : RadioButtonEk
Bisnis : RadioButtonBs
Selanjutnya masukkan codingnya, caranya:
Klik Kanan pada setiap Radio Button -> Events ->
Action -> actionPerformed, lalu masukkan codingnya sesuai coding di bawah
ini:
Radio Button Ekonomi :
TxtHarga.setText("15000");
Radio Button Bisnis :
TxtHarga.setText("20000");
Kelima ganti teks dan nama variabel komponen
caranya:
klik kanan pada komponen yang akan di modif JButton –>
Edit Text (untuk mengubah teks yang tampil) –> ganti sesuai gambar dibawah ini
dan klik kanan lagi pada komponen yang akan di modif lalu pilih Change Variable
Name (Untuk mengubah nama variabel komponen) –> Ganti menjadi :
Total: BtnTotal
Mulai: BtnMulai
Selanjutnya masukkan codingnya, caranya:
Klik Kanan pada setiap Button -> Events -> Action
-> actionPerformed, lalu masukkan codingnya sesuai Coding di bawah ini Untuk
Tombol Total:
int Jumlah = Integer.parseInt(TxtJumlah.getText());
int Harga =
Integer.parseInt(TxtHarga.getText());
int Total =
Jumlah*Harga;
TxtTotal.setText(""+Total)
Untuk Tombol Mulai:
TxtNama.setText("");
TxtNoId.setText("");
TxtHarga.setText("");
TxtJumlah.setText("");
TxtTotal.setText("");
Klik kanan di window lalu klik > Events > Window > WindowActivated
Setelah itu copy hasil codingan kalian lalu paste ke dalam windows
Menjalankan Aplikasi
Terakhir, adalah menjalankan Aplikasi Java nya.
Klik Run –> Run Project atau Run File.
Selamat, anda telah menyelesaikan satu project Java
menggunakan Netbeans.
**Tambahan : berikut kodingan lengkapnya ya**
/*
* To change this
license header, choose License Headers in Project Properties.
* To change this
template file, choose Tools | Templates
* and open the
template in the editor.
*/
/**
*
* @author admin
*/
public class FormTikerPelabuhanMerak extends javax.swing.JFrame
{
/**
* Creates new
form FormTikerPelabuhanMerak
*/
public
FormTikerPelabuhanMerak() {
initComponents();
}
/**
* This method is
called from within the constructor to initialize the form.
* WARNING: Do NOT
modify this code. The content of this method is always
* regenerated by
the Form Editor.
*/
@SuppressWarnings("unchecked")
// <editor-fold
defaultstate="collapsed" desc="Generated Code">
private void initComponents() {
jLabel1 = new
javax.swing.JLabel();
jLabel2 = new
javax.swing.JLabel();
jLabel3 = new
javax.swing.JLabel();
jLabel4 = new
javax.swing.JLabel();
jLabel5 = new
javax.swing.JLabel();
jLabel6 = new javax.swing.JLabel();
jLabel7 = new
javax.swing.JLabel();
jLabel8 = new
javax.swing.JLabel();
TxtNama = new
javax.swing.JTextField();
TxtNoId = new
javax.swing.JTextField();
TxtHarga = new
javax.swing.JTextField();
TxtJumlah =
new javax.swing.JTextField();
TxtTotal = new
javax.swing.JTextField();
ComboBoxTgl =
new javax.swing.JComboBox();
ComboBoxBln =
new javax.swing.JComboBox();
ComboBoxThn =
new javax.swing.JComboBox();
RadioButtonEk
= new javax.swing.JRadioButton();
RadioButtonBs
= new javax.swing.JRadioButton();
BtnTotal = new
javax.swing.JButton();
BtnMulai = new
javax.swing.JButton();
setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
jLabel1.setText("
Reservasi Tiket Kapal");
jLabel2.setText("Nama");
jLabel3.setText("Nomor Identitas (KTP/SIM)");
jLabel4.setText("Tanggal Lahir");
jLabel5.setText("Jenis Tiket");
jLabel6.setText("Harga Tiket");
jLabel7.setText("Jumlah Tiket");
jLabel8.setText("Total Harga");
TxtTotal.addActionListener(new java.awt.event.ActionListener() {
public
void actionPerformed(java.awt.event.ActionEvent evt) {
TxtTotalActionPerformed(evt);
}
});
ComboBoxTgl.setModel(new javax.swing.DefaultComboBoxModel(new String[] {
"Tanggal", "1", "2", "3",
"4", "5", "6", "7", "8",
"9", "10", "11", "12", "13",
"14", "15", "16", "17", "18",
"19", "20", "21", "22", "23",
"24", "25", "26", "27", "28",
"29", "30", "31" }));
ComboBoxTgl.addActionListener(new java.awt.event.ActionListener() {
public
void actionPerformed(java.awt.event.ActionEvent evt) {
ComboBoxTglActionPerformed(evt);
}
});
ComboBoxBln.setModel(new
javax.swing.DefaultComboBoxModel(new String[] { "Bulan",
"1", "2", "3", "4", "5",
"6", "7", "8", "9", "10",
"11", "12" }));
ComboBoxBln.addActionListener(new java.awt.event.ActionListener() {
public
void actionPerformed(java.awt.event.ActionEvent evt) {
ComboBoxBlnActionPerformed(evt);
}
});
ComboBoxThn.setModel(new javax.swing.DefaultComboBoxModel(new String[] {
"Tahun", "2017", "2016", "2015",
"2014", "2013", "2012", "2010",
"2009", "2008", "2007", "2006",
"2005", "2004", "2003", "2002",
"2001", "2000", "1999", "1998",
"1997", "1996", "1995", "1994",
"1993", "1992", "1991", " " }));
ComboBoxThn.addActionListener(new java.awt.event.ActionListener() {
public
void actionPerformed(java.awt.event.ActionEvent evt) {
ComboBoxThnActionPerformed(evt);
}
});
RadioButtonEk.setText("Ekonomi");
RadioButtonEk.addActionListener(new java.awt.event.ActionListener() {
public void
actionPerformed(java.awt.event.ActionEvent evt) {
RadioButtonEkActionPerformed(evt);
}
});
RadioButtonBs.setText("Bisnis");
RadioButtonBs.addActionListener(new java.awt.event.ActionListener() {
public
void actionPerformed(java.awt.event.ActionEvent evt) {
RadioButtonBsActionPerformed(evt);
}
});
BtnTotal.setText("Total");
BtnTotal.addActionListener(new java.awt.event.ActionListener() {
public
void actionPerformed(java.awt.event.ActionEvent evt) {
BtnTotalActionPerformed(evt);
}
});
BtnMulai.setText("Mulai");
BtnMulai.addActionListener(new java.awt.event.ActionListener() {
public
void actionPerformed(java.awt.event.ActionEvent evt) {
BtnMulaiActionPerformed(evt);
}
});
javax.swing.GroupLayout layout = new
javax.swing.GroupLayout(getContentPane());
getContentPane().setLayout(layout);
layout.setHorizontalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addGap(76, 76, 76)
.addComponent(BtnTotal)
.addGap(124, 124, 124)
.addComponent(BtnMulai))
.addGroup(layout.createSequentialGroup()
.addGap(49, 49, 49)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jLabel1, javax.swing.GroupLayout.PREFERRED_SIZE, 358,
javax.swing.GroupLayout.PREFERRED_SIZE)
.addGroup(layout.createSequentialGroup()
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING,
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addComponent(jLabel3)
.addGap(25, 25, 25))
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING,
layout.createSequentialGroup()
.addComponent(jLabel4)
.addGap(89,
89, 89)))
.addGroup(layout.createSequentialGroup()
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jLabel2)
.addComponent(jLabel6)
.addComponent(jLabel7))
.addGap(94, 94,
94)))
.addGroup(layout.createSequentialGroup()
.addComponent(jLabel8)
.addGap(97, 97, 97)))
.addComponent(jLabel5))
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(RadioButtonEk,
javax.swing.GroupLayout.PREFERRED_SIZE, 119,
javax.swing.GroupLayout.PREFERRED_SIZE)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING,
false)
.addComponent(TxtTotal, javax.swing.GroupLayout.DEFAULT_SIZE, 124,
Short.MAX_VALUE)
.addComponent(TxtJumlah, javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(TxtHarga,
javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(TxtNama, javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(TxtNoId, javax.swing.GroupLayout.Alignment.LEADING))
.addGroup(layout.createSequentialGroup()
.addComponent(ComboBoxTgl, javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addGap(18, 18, 18)
.addComponent(ComboBoxBln, javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)))
.addGap(18, 18,
18)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(RadioButtonBs)
.addComponent(ComboBoxThn, javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE))))))
.addContainerGap(139, Short.MAX_VALUE))
);
layout.setVerticalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addGap(26, 26, 26)
.addComponent(jLabel1, javax.swing.GroupLayout.PREFERRED_SIZE, 26,
javax.swing.GroupLayout.PREFERRED_SIZE)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jLabel2)
.addComponent(TxtNama, javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jLabel3)
.addComponent(TxtNoId, javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jLabel4)
.addComponent(ComboBoxTgl, javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(ComboBoxBln, javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(ComboBoxThn, javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jLabel5)
.addComponent(RadioButtonEk)
.addComponent(RadioButtonBs))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jLabel6)
.addComponent(TxtHarga, javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jLabel7)
.addComponent(TxtJumlah,
javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jLabel8)
.addComponent(TxtTotal, javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
.addGap(18, 18, 18)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(BtnTotal)
.addComponent(BtnMulai))
.addContainerGap(30, Short.MAX_VALUE))
);
pack();
}//
</editor-fold>
private void
ComboBoxThnActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add
your handling code here:
}
private void
RadioButtonEkActionPerformed(java.awt.event.ActionEvent evt) {
TxtHarga.setText("15000");
}
private void
RadioButtonBsActionPerformed(java.awt.event.ActionEvent evt) {
TxtHarga.setText("20000");
}
private void
BtnTotalActionPerformed(java.awt.event.ActionEvent evt) {
int Jumlah =
Integer.parseInt(TxtJumlah.getText());
int Harga =
Integer.parseInt(TxtHarga.getText());
int Total =
Jumlah*Harga;
TxtTotal.setText(""+Total)
}
private void
BtnMulaiActionPerformed(java.awt.event.ActionEvent evt) {
TxtNama.setText("");
TxtNoId.setText("");
TxtHarga.setText("");
TxtJumlah.setText("");
TxtTotal.setText("");
}
private void
ComboBoxTglActionPerformed(java.awt.event.ActionEvent evt) {
for(int
CmbBoxTgl=1; CmbBoxTgl<=31; CmbBoxTgl++){
System.out.println(CmbBoxTgl);
}
}
private void
ComboBoxBlnActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add
your handling code here:
}
private void
TxtTotalActionPerformed(java.awt.event.ActionEvent evt) {
int Total =
TxtJumlah*TxtHarga;
}
/**
* @param args the
command line arguments
*/
public static void
main(String args[]) {
/* Set the
Nimbus look and feel */
//<editor-fold defaultstate="collapsed" desc=" Look
and feel setting code (optional) ">
/* If Nimbus
(introduced in Java SE 6) is not available, stay with the default look and
feel.
* For details
see http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.html
*/
try {
for
(javax.swing.UIManager.LookAndFeelInfo info :
javax.swing.UIManager.getInstalledLookAndFeels()) {
if
("Nimbus".equals(info.getName())) {
javax.swing.UIManager.setLookAndFeel(info.getClassName());
break;
}
}
} catch
(ClassNotFoundException ex) {
java.util.logging.Logger.getLogger(FormTikerPelabuhanMerak.class.getName()).log(java.util.logging.Level.SEVERE,
null, ex);
} catch
(InstantiationException ex) {
java.util.logging.Logger.getLogger(FormTikerPelabuhanMerak.class.getName()).log(java.util.logging.Level.SEVERE,
null, ex);
} catch
(IllegalAccessException ex) {
java.util.logging.Logger.getLogger(FormTikerPelabuhanMerak.class.getName()).log(java.util.logging.Level.SEVERE,
null, ex);
} catch
(javax.swing.UnsupportedLookAndFeelException ex) {
java.util.logging.Logger.getLogger(FormTikerPelabuhanMerak.class.getName()).log(java.util.logging.Level.SEVERE,
null, ex);
}
//</editor-fold>
/* Create and
display the form */
java.awt.EventQueue.invokeLater(new Runnable() {
public
void run() {
new
FormTikerPelabuhanMerak().setVisible(true);
}
});
}
// Variables
declaration - do not modify
private
javax.swing.JButton BtnMulai;
private
javax.swing.JButton BtnTotal;
private
javax.swing.JComboBox ComboBoxBln;
private
javax.swing.JComboBox ComboBoxTgl;
private
javax.swing.JComboBox ComboBoxThn;
private
javax.swing.JRadioButton RadioButtonBs;
private
javax.swing.JRadioButton RadioButtonEk;
private
javax.swing.JTextField TxtHarga;
private
javax.swing.JTextField TxtJumlah;
private javax.swing.JTextField
TxtNama;
private
javax.swing.JTextField TxtNoId;
private
javax.swing.JTextField TxtTotal;
private
javax.swing.JLabel jLabel1;
private
javax.swing.JLabel jLabel2;
private
javax.swing.JLabel jLabel3;
private javax.swing.JLabel
jLabel4;
private
javax.swing.JLabel jLabel5;
private
javax.swing.JLabel jLabel6;
private
javax.swing.JLabel jLabel7;
private
javax.swing.JLabel jLabel8;
// End of
variables declaration
}













🖒
BalasHapus