From Tiket Kereta
Membuat Program Penjualan Tiket Kereta API Java NetBeans
Saat ini memang lebih mudah ketika ingin memesan tiket kereta, baik secara online maupun offline. Pada dasarnya bisnis penjualan tiket kereta API merupakan bisnis yang bisa jalankan oleh siapa saja, asalkan ada kemauan untuk berbisnis semuanya dapat terwujud. Kini banyak perusahaan yang menawarkan kepada para pebinis untuk menjadi agen travel atau penjual tiket kereta API. Bisnis penjualan tiket kereta API lebih mudah karena dapat dijalankan di mana saja asalkan terdapat koneksi internet untuk menjual tiket. Keuntungan penjualan tiket kereta API juga cukup besar dan modal yang dibutuhkan untuk mendaftar menjadi Agen Travel cukup terjangkau. Terinspirasi dari hal tersebut, Kami mencoba untuk membuat program sederhana penjualan tiket kereta API menggunakan Java NetBeans. Program ini dibuat untuk menambah informasi dan tidak dapat diterapkan pada bisnis penjualan tiket kereta API. Berikut ini tahapan-tahapan pembuatan program penjualan tiket
1. Buka Java NetBeans
Buka software Java NetBeans dan selanjutnya membuat sebuah project baru dengan memilih File > New project.
Buat
class dengan cara klik kanan pada package > New > Java class dan
buat 2 class dengan nama, seperti: ProgramPenjualanTiketKeretaApi dan
ClassProgramTiket
Setelah Anda selesai membuat class, Anda bisa langsung membuat script pada ProgramPenjualanTiketKeretaApi. Buatlah script perintah untuk memanggil FrameProgramTiket agar bisa tampil. Berikut ini contoh script yang telah selesai dibuat
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package program.penjualan.tiket.kereta.api;
/**
*
* @author Ardy Sendleep
*/
public class ProgramPenjualanTiketKeretaApi {
/**
* @param args the command line arguments
*/
public static void main(String[] args) {
FrameProgramTiket Laund = new FrameProgramTiket();
Laund.setVisible(true);
}
}
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package program.penjualan.tiket.kereta.api;
/**
*
* @author Ardy Sendleep
*/
public class ProgramPenjualanTiketKeretaApi {
/**
* @param args the command line arguments
*/
public static void main(String[] args) {
FrameProgramTiket Laund = new FrameProgramTiket();
Laund.setVisible(true);
}
}
Selanjutnya membuat script ClassProgramTiket untuk membuat variabel yang akan digunakan pada desain FrameProgramTiket
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package program.penjualan.tiket.kereta.api;
/**
*
* @author Ardy Sendleep
*/
public class ClassProgramTiket {
public String Nama;
public String KodeKereta;
public String NamaKereta;
public String Jurusan;
public String JenisTiket;
public float HargaTiket;
public float JumlahTiket;
public float Totalbayar;
@Override
public String toString(){
return Nama +"-" + KodeKereta +"-" + NamaKereta + "-" + Jurusan +"-" + JenisTiket + "-" + HargaTiket+"-" + JumlahTiket + "-" + Totalbayar;
}
}
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package program.penjualan.tiket.kereta.api;
/**
*
* @author Ardy Sendleep
*/
public class ClassProgramTiket {
public String Nama;
public String KodeKereta;
public String NamaKereta;
public String Jurusan;
public String JenisTiket;
public float HargaTiket;
public float JumlahTiket;
public float Totalbayar;
@Override
public String toString(){
return Nama +"-" + KodeKereta +"-" + NamaKereta + "-" + Jurusan +"-" + JenisTiket + "-" + HargaTiket+"-" + JumlahTiket + "-" + Totalbayar;
}
}
Buat desain frame untuk tampilan program Anda dengan cara klik kanan pada package > New > JFrame Form dengan nama FrameProgramTiket
Buat desain frame program FrameProgramTiket seperti berikut ini.
Setelah desain selesai, isi desain frame dengan script seperti berikut ini.
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package program.penjualan.tiket.kereta.api;
import javax.swing.DefaultListModel;
/**
*
* @author Ardy Sendleep
*/
public class FrameProgramTiket extends javax.swing.JFrame {
DefaultListModel<classprogramtiket> Tiket = new DefaultListModel<>();
private String Nama;
private String KodeKereta;
private String NamaKereta;
private String Jurusan;
private String JenisTiket;
private float HargaTiket;
private float JumlahTiket;
private float Totalbayar;
private ClassProgramTiket ClassProgramTiket;
/**
* Creates new form FrameProgramTiket
*/
public FrameProgramTiket() {
initComponents();
ListView.setModel(Tiket);
cbokodeKereta.addItem("KRT001");
cbokodeKereta.addItem("KRT002");
cbokodeKereta.addItem("KRT003");
cbokodeKereta.addItem("KRT004");
jurusan.addItem("Bekasi - Pasar Senen");
jurusan.addItem("Bekasi - Maggarai");
jurusan.addItem("Bekasi - Gambir");
jurusan.addItem("Bekasi - Jakarta Kota");
jenisTiket.addItem("Anak");
jenisTiket.addItem("Dewasa");
jenisKereta.addItem("Eksekutif");
jenisKereta.addItem("Bisnis");
jenisKereta.addItem("Ekonomi");
}
/**
* 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() {
jTextField1 = new javax.swing.JTextField();
jLabel1 = new javax.swing.JLabel();
jLabel2 = new javax.swing.JLabel();
jLabel3 = new javax.swing.JLabel();
jLabel5 = new javax.swing.JLabel();
jLabel6 = new javax.swing.JLabel();
jLabel7 = new javax.swing.JLabel();
jLabel8 = new javax.swing.JLabel();
jLabel9 = new javax.swing.JLabel();
jLabel10 = new javax.swing.JLabel();
txtNama = new javax.swing.JTextField();
txtJumlahTiket = new javax.swing.JTextField();
txtHargaTiket = new javax.swing.JTextField();
txtTotalBayar = new javax.swing.JTextField();
cbokodeKereta = new javax.swing.JComboBox();
jurusan = new javax.swing.JComboBox();
btnProses = new javax.swing.JButton();
exit = new javax.swing.JButton();
jScrollPane1 = new javax.swing.JScrollPane();
ListView = new javax.swing.JList();
jLabel4 = new javax.swing.JLabel();
jenisTiket = new javax.swing.JComboBox();
jenisKereta = new javax.swing.JComboBox();
reset = new javax.swing.JButton();
jTextField1.setText("jTextField1");
setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
jLabel1.setFont(new java.awt.Font("Arial", 1, 18)); // NOI18N
jLabel1.setText("Program Tiket Kereta API SerbaBebas");
jLabel2.setFont(new java.awt.Font("Arial", 1, 14)); // NOI18N
jLabel2.setText("Total Bayar");
jLabel3.setFont(new java.awt.Font("Arial", 1, 14)); // NOI18N
jLabel3.setText("Result Pemesanan");
jLabel5.setFont(new java.awt.Font("Arial", 1, 14)); // NOI18N
jLabel5.setText("Jurusan");
jLabel6.setFont(new java.awt.Font("Arial", 1, 14)); // NOI18N
jLabel6.setText("Jenis Kereta");
jLabel7.setFont(new java.awt.Font("Arial", 1, 14)); // NOI18N
jLabel7.setText("Kode Kereta");
jLabel8.setFont(new java.awt.Font("Arial", 1, 14)); // NOI18N
jLabel8.setText("Jenis Tiket");
jLabel9.setFont(new java.awt.Font("Arial", 1, 14)); // NOI18N
jLabel9.setText("Harga Tiket");
jLabel10.setFont(new java.awt.Font("Arial", 1, 14)); // NOI18N
jLabel10.setText("Jumlah Tiket");
txtNama.setFont(new java.awt.Font("Arial", 1, 14)); // NOI18N
txtNama.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
txtNamaActionPerformed(evt);
}
});
txtJumlahTiket.setFont(new java.awt.Font("Arial", 1, 14)); // NOI18N
txtJumlahTiket.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
txtJumlahTiketActionPerformed(evt);
}
});
txtHargaTiket.setFont(new java.awt.Font("Arial", 1, 14)); // NOI18N
txtHargaTiket.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
txtHargaTiketActionPerformed(evt);
}
});
txtTotalBayar.setFont(new java.awt.Font("Arial", 1, 14)); // NOI18N
txtTotalBayar.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
txtTotalBayarActionPerformed(evt);
}
});
jurusan.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jurusanActionPerformed(evt);
}
});
btnProses.setText("Proses");
btnProses.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
btnProsesActionPerformed(evt);
}
});
exit.setText("Exit");
ListView.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
ListViewMouseClicked(evt);
}
});
jScrollPane1.setViewportView(ListView);
jLabel4.setFont(new java.awt.Font("Arial", 1, 14)); // NOI18N
jLabel4.setText("Nama");
reset.setText("Reset");
reset.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
resetActionPerformed(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()
.addContainerGap()
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jLabel8, javax.swing.GroupLayout.PREFERRED_SIZE, 118, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(jLabel3, javax.swing.GroupLayout.PREFERRED_SIZE, 152, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, 381, javax.swing.GroupLayout.PREFERRED_SIZE)
.addGroup(layout.createSequentialGroup()
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jLabel9, javax.swing.GroupLayout.PREFERRED_SIZE, 118, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(jLabel10, javax.swing.GroupLayout.PREFERRED_SIZE, 118, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(jLabel4, javax.swing.GroupLayout.PREFERRED_SIZE, 152, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(jLabel7, javax.swing.GroupLayout.PREFERRED_SIZE, 118, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(jLabel6, javax.swing.GroupLayout.PREFERRED_SIZE, 118, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(jLabel5, javax.swing.GroupLayout.PREFERRED_SIZE, 118, javax.swing.GroupLayout.PREFERRED_SIZE))
.addGap(29, 29, 29)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
.addComponent(jenisTiket, 0, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addComponent(jurusan, 0, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addComponent(cbokodeKereta, 0, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addComponent(txtNama)
.addComponent(jenisKereta, 0, 162, Short.MAX_VALUE))
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING, false)
.addComponent(txtHargaTiket, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.DEFAULT_SIZE, 113, Short.MAX_VALUE)
.addComponent(txtJumlahTiket, javax.swing.GroupLayout.Alignment.LEADING))))
.addGroup(layout.createSequentialGroup()
.addComponent(jLabel2, javax.swing.GroupLayout.PREFERRED_SIZE, 118, javax.swing.GroupLayout.PREFERRED_SIZE)
.addGap(63, 63, 63)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(txtTotalBayar, javax.swing.GroupLayout.PREFERRED_SIZE, 113, javax.swing.GroupLayout.PREFERRED_SIZE)
.addGroup(layout.createSequentialGroup()
.addComponent(btnProses)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(reset)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(exit))))))
.addGroup(layout.createSequentialGroup()
.addGap(46, 46, 46)
.addComponent(jLabel1)))
.addGap(0, 23, Short.MAX_VALUE))
);
layout.setVerticalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addGap(20, 20, 20)
.addComponent(jLabel1, javax.swing.GroupLayout.PREFERRED_SIZE, 47, javax.swing.GroupLayout.PREFERRED_SIZE)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(txtNama, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(jLabel4, javax.swing.GroupLayout.PREFERRED_SIZE, 36, javax.swing.GroupLayout.PREFERRED_SIZE))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jLabel7, javax.swing.GroupLayout.PREFERRED_SIZE, 36, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(cbokodeKereta, 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(jLabel6, javax.swing.GroupLayout.PREFERRED_SIZE, 36, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(jenisKereta, 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, javax.swing.GroupLayout.PREFERRED_SIZE, 36, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(jurusan, 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, javax.swing.GroupLayout.PREFERRED_SIZE, 36, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(jenisTiket, 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(jLabel9, javax.swing.GroupLayout.PREFERRED_SIZE, 36, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(txtHargaTiket, 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(jLabel10, javax.swing.GroupLayout.PREFERRED_SIZE, 36, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(txtJumlahTiket, 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(jLabel2, javax.swing.GroupLayout.PREFERRED_SIZE, 36, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(txtTotalBayar, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(btnProses)
.addComponent(reset)
.addComponent(exit))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 11, Short.MAX_VALUE)
.addComponent(jLabel3, javax.swing.GroupLayout.PREFERRED_SIZE, 36, javax.swing.GroupLayout.PREFERRED_SIZE)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, 46, javax.swing.GroupLayout.PREFERRED_SIZE)
.addGap(24, 24, 24))
);
pack();
}// </editor-fold>
private void txtNamaActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
}
private void txtJumlahTiketActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
}
private void txtHargaTiketActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
}
private void txtTotalBayarActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
}
private void jurusanActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
}
private void ListViewMouseClicked(java.awt.event.MouseEvent evt) {
// TODO add your handling code here:
int index=ListView.getSelectedIndex();
ClassProgramTiket LN = Tiket.getElementAt(index);
txtNama.setText(LN.Nama);
txtHargaTiket.setText(Float.toString(LN.HargaTiket));
txtJumlahTiket.setText(Float.toString(LN.JumlahTiket));
txtTotalBayar.setText(Float.toString(LN.Totalbayar));
}
private void btnProsesActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
ClassProgramTiket LN = new ClassProgramTiket();
LN.Nama=txtNama.getText();
LN.KodeKereta= (String)cbokodeKereta.getSelectedItem();
LN.NamaKereta=(String)jenisKereta.getSelectedItem();
LN.Jurusan= (String)jurusan.getSelectedItem();
LN.JenisTiket= (String)jenisTiket.getSelectedItem();
LN.HargaTiket= Float.parseFloat(txtHargaTiket.getText());
LN.JumlahTiket= Float.parseFloat(txtJumlahTiket.getText());
LN.Totalbayar= Float.parseFloat(txtTotalBayar.getText());
txtNama.setText("");
txtHargaTiket.setText("");
txtJumlahTiket.setText("");
txtTotalBayar.setText("");
Tiket.addElement(LN);
}
private void resetActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
int index = ListView.getSelectedIndex();
Tiket.removeElementAt(index);
txtNama.setText("");
txtHargaTiket.setText("");
txtJumlahTiket.setText("");
txtTotalBayar.setText("");
}
/**
* @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(FrameProgramTiket.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
} catch (InstantiationException ex) {
java.util.logging.Logger.getLogger(FrameProgramTiket.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
} catch (IllegalAccessException ex) {
java.util.logging.Logger.getLogger(FrameProgramTiket.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
} catch (javax.swing.UnsupportedLookAndFeelException ex) {
java.util.logging.Logger.getLogger(FrameProgramTiket.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
}
//</editor-fold>
/*
* Create and display the form
*/
java.awt.EventQueue.invokeLater(new Runnable() {
@Override
public void run() {
new FrameProgramTiket().setVisible(true);
}
});
}
// Variables declaration - do not modify
private javax.swing.JList ListView;
private javax.swing.JButton btnProses;
private javax.swing.JComboBox cbokodeKereta;
private javax.swing.JButton exit;
private javax.swing.JLabel jLabel1;
private javax.swing.JLabel jLabel10;
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;
private javax.swing.JLabel jLabel9;
private javax.swing.JScrollPane jScrollPane1;
private javax.swing.JTextField jTextField1;
private javax.swing.JComboBox jenisKereta;
private javax.swing.JComboBox jenisTiket;
private javax.swing.JComboBox jurusan;
private javax.swing.JButton reset;
private javax.swing.JTextField txtHargaTiket;
private javax.swing.JTextField txtJumlahTiket;
private javax.swing.JTextField txtNama;
private javax.swing.JTextField txtTotalBayar;
// End of variables declaration
}
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package program.penjualan.tiket.kereta.api;
import javax.swing.DefaultListModel;
/**
*
* @author Ardy Sendleep
*/
public class FrameProgramTiket extends javax.swing.JFrame {
DefaultListModel<classprogramtiket> Tiket = new DefaultListModel<>();
private String Nama;
private String KodeKereta;
private String NamaKereta;
private String Jurusan;
private String JenisTiket;
private float HargaTiket;
private float JumlahTiket;
private float Totalbayar;
private ClassProgramTiket ClassProgramTiket;
/**
* Creates new form FrameProgramTiket
*/
public FrameProgramTiket() {
initComponents();
ListView.setModel(Tiket);
cbokodeKereta.addItem("KRT001");
cbokodeKereta.addItem("KRT002");
cbokodeKereta.addItem("KRT003");
cbokodeKereta.addItem("KRT004");
jurusan.addItem("Bekasi - Pasar Senen");
jurusan.addItem("Bekasi - Maggarai");
jurusan.addItem("Bekasi - Gambir");
jurusan.addItem("Bekasi - Jakarta Kota");
jenisTiket.addItem("Anak");
jenisTiket.addItem("Dewasa");
jenisKereta.addItem("Eksekutif");
jenisKereta.addItem("Bisnis");
jenisKereta.addItem("Ekonomi");
}
/**
* 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() {
jTextField1 = new javax.swing.JTextField();
jLabel1 = new javax.swing.JLabel();
jLabel2 = new javax.swing.JLabel();
jLabel3 = new javax.swing.JLabel();
jLabel5 = new javax.swing.JLabel();
jLabel6 = new javax.swing.JLabel();
jLabel7 = new javax.swing.JLabel();
jLabel8 = new javax.swing.JLabel();
jLabel9 = new javax.swing.JLabel();
jLabel10 = new javax.swing.JLabel();
txtNama = new javax.swing.JTextField();
txtJumlahTiket = new javax.swing.JTextField();
txtHargaTiket = new javax.swing.JTextField();
txtTotalBayar = new javax.swing.JTextField();
cbokodeKereta = new javax.swing.JComboBox();
jurusan = new javax.swing.JComboBox();
btnProses = new javax.swing.JButton();
exit = new javax.swing.JButton();
jScrollPane1 = new javax.swing.JScrollPane();
ListView = new javax.swing.JList();
jLabel4 = new javax.swing.JLabel();
jenisTiket = new javax.swing.JComboBox();
jenisKereta = new javax.swing.JComboBox();
reset = new javax.swing.JButton();
jTextField1.setText("jTextField1");
setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
jLabel1.setFont(new java.awt.Font("Arial", 1, 18)); // NOI18N
jLabel1.setText("Program Tiket Kereta API SerbaBebas");
jLabel2.setFont(new java.awt.Font("Arial", 1, 14)); // NOI18N
jLabel2.setText("Total Bayar");
jLabel3.setFont(new java.awt.Font("Arial", 1, 14)); // NOI18N
jLabel3.setText("Result Pemesanan");
jLabel5.setFont(new java.awt.Font("Arial", 1, 14)); // NOI18N
jLabel5.setText("Jurusan");
jLabel6.setFont(new java.awt.Font("Arial", 1, 14)); // NOI18N
jLabel6.setText("Jenis Kereta");
jLabel7.setFont(new java.awt.Font("Arial", 1, 14)); // NOI18N
jLabel7.setText("Kode Kereta");
jLabel8.setFont(new java.awt.Font("Arial", 1, 14)); // NOI18N
jLabel8.setText("Jenis Tiket");
jLabel9.setFont(new java.awt.Font("Arial", 1, 14)); // NOI18N
jLabel9.setText("Harga Tiket");
jLabel10.setFont(new java.awt.Font("Arial", 1, 14)); // NOI18N
jLabel10.setText("Jumlah Tiket");
txtNama.setFont(new java.awt.Font("Arial", 1, 14)); // NOI18N
txtNama.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
txtNamaActionPerformed(evt);
}
});
txtJumlahTiket.setFont(new java.awt.Font("Arial", 1, 14)); // NOI18N
txtJumlahTiket.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
txtJumlahTiketActionPerformed(evt);
}
});
txtHargaTiket.setFont(new java.awt.Font("Arial", 1, 14)); // NOI18N
txtHargaTiket.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
txtHargaTiketActionPerformed(evt);
}
});
txtTotalBayar.setFont(new java.awt.Font("Arial", 1, 14)); // NOI18N
txtTotalBayar.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
txtTotalBayarActionPerformed(evt);
}
});
jurusan.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jurusanActionPerformed(evt);
}
});
btnProses.setText("Proses");
btnProses.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
btnProsesActionPerformed(evt);
}
});
exit.setText("Exit");
ListView.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
ListViewMouseClicked(evt);
}
});
jScrollPane1.setViewportView(ListView);
jLabel4.setFont(new java.awt.Font("Arial", 1, 14)); // NOI18N
jLabel4.setText("Nama");
reset.setText("Reset");
reset.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
resetActionPerformed(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()
.addContainerGap()
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jLabel8, javax.swing.GroupLayout.PREFERRED_SIZE, 118, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(jLabel3, javax.swing.GroupLayout.PREFERRED_SIZE, 152, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, 381, javax.swing.GroupLayout.PREFERRED_SIZE)
.addGroup(layout.createSequentialGroup()
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jLabel9, javax.swing.GroupLayout.PREFERRED_SIZE, 118, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(jLabel10, javax.swing.GroupLayout.PREFERRED_SIZE, 118, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(jLabel4, javax.swing.GroupLayout.PREFERRED_SIZE, 152, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(jLabel7, javax.swing.GroupLayout.PREFERRED_SIZE, 118, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(jLabel6, javax.swing.GroupLayout.PREFERRED_SIZE, 118, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(jLabel5, javax.swing.GroupLayout.PREFERRED_SIZE, 118, javax.swing.GroupLayout.PREFERRED_SIZE))
.addGap(29, 29, 29)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
.addComponent(jenisTiket, 0, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addComponent(jurusan, 0, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addComponent(cbokodeKereta, 0, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addComponent(txtNama)
.addComponent(jenisKereta, 0, 162, Short.MAX_VALUE))
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING, false)
.addComponent(txtHargaTiket, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.DEFAULT_SIZE, 113, Short.MAX_VALUE)
.addComponent(txtJumlahTiket, javax.swing.GroupLayout.Alignment.LEADING))))
.addGroup(layout.createSequentialGroup()
.addComponent(jLabel2, javax.swing.GroupLayout.PREFERRED_SIZE, 118, javax.swing.GroupLayout.PREFERRED_SIZE)
.addGap(63, 63, 63)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(txtTotalBayar, javax.swing.GroupLayout.PREFERRED_SIZE, 113, javax.swing.GroupLayout.PREFERRED_SIZE)
.addGroup(layout.createSequentialGroup()
.addComponent(btnProses)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(reset)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(exit))))))
.addGroup(layout.createSequentialGroup()
.addGap(46, 46, 46)
.addComponent(jLabel1)))
.addGap(0, 23, Short.MAX_VALUE))
);
layout.setVerticalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addGap(20, 20, 20)
.addComponent(jLabel1, javax.swing.GroupLayout.PREFERRED_SIZE, 47, javax.swing.GroupLayout.PREFERRED_SIZE)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(txtNama, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(jLabel4, javax.swing.GroupLayout.PREFERRED_SIZE, 36, javax.swing.GroupLayout.PREFERRED_SIZE))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jLabel7, javax.swing.GroupLayout.PREFERRED_SIZE, 36, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(cbokodeKereta, 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(jLabel6, javax.swing.GroupLayout.PREFERRED_SIZE, 36, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(jenisKereta, 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, javax.swing.GroupLayout.PREFERRED_SIZE, 36, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(jurusan, 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, javax.swing.GroupLayout.PREFERRED_SIZE, 36, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(jenisTiket, 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(jLabel9, javax.swing.GroupLayout.PREFERRED_SIZE, 36, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(txtHargaTiket, 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(jLabel10, javax.swing.GroupLayout.PREFERRED_SIZE, 36, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(txtJumlahTiket, 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(jLabel2, javax.swing.GroupLayout.PREFERRED_SIZE, 36, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(txtTotalBayar, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(btnProses)
.addComponent(reset)
.addComponent(exit))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 11, Short.MAX_VALUE)
.addComponent(jLabel3, javax.swing.GroupLayout.PREFERRED_SIZE, 36, javax.swing.GroupLayout.PREFERRED_SIZE)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, 46, javax.swing.GroupLayout.PREFERRED_SIZE)
.addGap(24, 24, 24))
);
pack();
}// </editor-fold>
private void txtNamaActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
}
private void txtJumlahTiketActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
}
private void txtHargaTiketActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
}
private void txtTotalBayarActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
}
private void jurusanActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
}
private void ListViewMouseClicked(java.awt.event.MouseEvent evt) {
// TODO add your handling code here:
int index=ListView.getSelectedIndex();
ClassProgramTiket LN = Tiket.getElementAt(index);
txtNama.setText(LN.Nama);
txtHargaTiket.setText(Float.toString(LN.HargaTiket));
txtJumlahTiket.setText(Float.toString(LN.JumlahTiket));
txtTotalBayar.setText(Float.toString(LN.Totalbayar));
}
private void btnProsesActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
ClassProgramTiket LN = new ClassProgramTiket();
LN.Nama=txtNama.getText();
LN.KodeKereta= (String)cbokodeKereta.getSelectedItem();
LN.NamaKereta=(String)jenisKereta.getSelectedItem();
LN.Jurusan= (String)jurusan.getSelectedItem();
LN.JenisTiket= (String)jenisTiket.getSelectedItem();
LN.HargaTiket= Float.parseFloat(txtHargaTiket.getText());
LN.JumlahTiket= Float.parseFloat(txtJumlahTiket.getText());
LN.Totalbayar= Float.parseFloat(txtTotalBayar.getText());
txtNama.setText("");
txtHargaTiket.setText("");
txtJumlahTiket.setText("");
txtTotalBayar.setText("");
Tiket.addElement(LN);
}
private void resetActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
int index = ListView.getSelectedIndex();
Tiket.removeElementAt(index);
txtNama.setText("");
txtHargaTiket.setText("");
txtJumlahTiket.setText("");
txtTotalBayar.setText("");
}
/**
* @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(FrameProgramTiket.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
} catch (InstantiationException ex) {
java.util.logging.Logger.getLogger(FrameProgramTiket.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
} catch (IllegalAccessException ex) {
java.util.logging.Logger.getLogger(FrameProgramTiket.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
} catch (javax.swing.UnsupportedLookAndFeelException ex) {
java.util.logging.Logger.getLogger(FrameProgramTiket.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
}
//</editor-fold>
/*
* Create and display the form
*/
java.awt.EventQueue.invokeLater(new Runnable() {
@Override
public void run() {
new FrameProgramTiket().setVisible(true);
}
});
}
// Variables declaration - do not modify
private javax.swing.JList ListView;
private javax.swing.JButton btnProses;
private javax.swing.JComboBox cbokodeKereta;
private javax.swing.JButton exit;
private javax.swing.JLabel jLabel1;
private javax.swing.JLabel jLabel10;
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;
private javax.swing.JLabel jLabel9;
private javax.swing.JScrollPane jScrollPane1;
private javax.swing.JTextField jTextField1;
private javax.swing.JComboBox jenisKereta;
private javax.swing.JComboBox jenisTiket;
private javax.swing.JComboBox jurusan;
private javax.swing.JButton reset;
private javax.swing.JTextField txtHargaTiket;
private javax.swing.JTextField txtJumlahTiket;
private javax.swing.JTextField txtNama;
private javax.swing.JTextField txtTotalBayar;
// End of variables declaration
}








Komentar
Posting Komentar