Aplikasi Tiket Bioskop dengan JTable - Kenal Coding

Aplikasi Tiket Bioskop dengan JTable

Aplikasi Tiket Bioskop dengan JTable

Halo teman-teman. Bagaimana kabar kalian hari ini? Semoga kalian dalam keadaan sehat dan bahagia serta selalu berada dalam lindungan Tuhan Yang Maha Esa. Aamiin.

Nah, untuk project saya yang kedua ini, saya ingin membuat tutorial mengenai contoh kasus “Pemesanan Tiket Bioskop secara Online”. Saat ini, sudah banyak orang-orang yang sering menghabiskan waktunya hanya untuk menonton film di bioskop. Entah itu menonton bersama keluarga, sahabat, pacar atau bahkan hanya sendirian saja. Ditambah lagi dengan adanya film-film terbaru yang sangat merekomendasikan Anda untuk menonton film tersebut, sehingga membuat Anda selalu tertarik untuk datang ke bioskop. Namun, bertempat tinggal di kota besar contohnya Yogyakarta terkadang membuat kita selalu bertemu dengan keadaan ‘terlambat untuk sampai tujuan’ dikarenakan lalu lintas yang padat alias macet. Maka dari itu, saya membuat project ini dengan tujuan; jika Anda tidak sempat waktu untuk membeli tiket secara langsung dikarenakan terjebak macet. Maka, Anda dapat memesan tiket terlebih dahulu melalui media online yang sudah disediakan. Jadi , Anda tidak perlu khawatir akan kehabisan tiket.

Saya ingin menampilkan hasil output-nya ketika di run akan terlihat seperti pada gambar dibawah ini.



Data dibawah ini merupakan penamaan data pada tiap Fitur Swing.
Gambar.1 Konten Swing

Gambar.2 Konten Swing

Gambar.3 Konten Swing


Berikut langkah-langkah dalam membuat aplikasi “Pembelian Tiket Bioskop secara Online” menggunakan Pemprograman Java NetBeans IDE.


1.     Buka aplikasi Java NetBeans pada komputer Anda.

2.     Langkah awal yang harus Anda lakukan adalah membuat project baru pada NetBeans. Pilih “Java Application”, lalu klik Next.


3.     Beri nama project (karena saya ingin membuat project mengenai Bioskop, maka saya memberikan nama project tersebut dengan Bioskop 23), lalu klik Finish.

Setelah itu, hanya tinggal memberi coding sesuai dengan project. Disini saya ingin menampilkan Message Box terlebih dahulu ketika mulai me-run project seperti yang terlihat pada gambar dibawah ini.

Jadi, nantinya, setelah pesan OK pada Message Box ditekan Enter. Maka, secara otomatis langsung muncul jendela tampilan  seperti pada gambar dibawah ini.

Lalu, ketikkan source code untuk perintah Message Box seperti pada gambar dibawah ini.
Setelah itu, membuat File JFrame From untuk source code Bioskop secara keseluruhan.

4.     Buat File JFrame baru terlebih dahulu, dengan cara: klik kanan File pada project – pilih New – pilih JFrame Form – ketikkan (Nama File JFrame) – klik Finish.
 

5.     Buat tampilan desain sesuai keinginan dengan menggunakan Fitur Swing, seperti pada gambar dibawah ini.
Setelah design sudah selesai dibuat, sekarang hanya tinggal membuat source code untuk tampilan Bioskop tersebut.


6.     Untuk membuat source code “Beli Tiket”, tambahkan perintah dengan cara: Klik kanan pada button (Beli Tiket) – pilih Events – pilih Action – pilih actionPerformed (BeliActionPerformed). Fungsinya, ketika tombol Beli Tiket di klik, maka akan memunculkan output pada Total Harga.

Lalu masukkan source code seperti pada gambar dibawah ini.
Pada source code tersebut, menggunakan fungsi aritmatikacondition if dan else if.

7.     Untuk membuat source code “Keluar”, tambahkan perintah dengan cara: klik kanan pada button (Keluar) – pilih Events – pilih Actions – pilih actionPerformed (KeluarActionPerformed). Fungsinya untuk menutup jendela project.

Lalu masukkan source code seperti pada gambar dibawah ini.
 

8.     Untuk membuat source code “Tabel Mouse Klik”, tambahkan perintah dengan cara: klik kanan pada button (Tabel) – pilih Events – pilih Mouse – pilih mouseClicked (tabMouseClicked). Fungsinya untuk mengupdate data di tabel.

Lalu masukkan source code seperti pada gambar dibawah ini. 

9.     Untuk membuat source code “Hapus”, tambahkan perintah dengan cara: klik kanan pada button (Hapus) – pilih Events – pilih Mouse – pilih mouseClicked (tabMouseClicked). Fungsinya untuk mengupdate data di tabel.

Lalu masukkan source code seperti pada gambar dibawah ini. 

10.     Untuk membuat source code “Verifikasi”, tambahkan perintah dengan cara: klik kanan pada button (Verifikasi) – pilih Events – pilih Actions – pilih actionPerformed (VerifikasiActionPerformed). Fungsinya untuk menampilkan hasil verifikasi data secara keseluruhan.

Lalu masukkan source code seperti pada gambar dibawah ini. 


Nah, pemberian source code pada project sudah selesai. Gimana? Pusing ya? Maka dari itu, kalian harus memperhatikan secara seksama agar dapat memahami maksud dari setiap source code. Kalau sudah terbiasa, pasti bakal bisa kok.


Ini coding secara keseluruhan dari project diatas:

1. Coding pada File JFrame (Bioskop08).
package Bioskop;

import javax.swing.JOptionPane;
import javax.swing.table.DefaultTableModel;

/**
 *
 * @author ardidoaibu
 */
public class Bioskop_08 extends javax.swing.JFrame {
    int max=0;
    /**
     * Creates new form Bioskop_08
     */
    DefaultTableModel model;
    public Bioskop_08() {
        initComponents();
        model=(DefaultTableModel)tab.getModel();
    }                              
      
Source Code pada button Beli Tiket.    private void btnbeliActionPerformed(java.awt.event.ActionEvent evt) {                                       
        // TODO add your handling code here:
       int Bil=Integer.parseInt(txtjml.getText());
       if (cmbhari.getSelectedItem()=="Senin"){
           int hasil=Bil*30000;
           txttotal.setText(""+hasil);
       }else if (cmbhari.getSelectedItem()=="Selasa"){
           int hasil=Bil*30000;
           txttotal.setText(""+hasil);
       }else if (cmbhari.getSelectedItem()=="Rabu"){
           int hasil=Bil*30000;
           txttotal.setText(""+hasil);
       }else if (cmbhari.getSelectedItem()=="Kamis"){
           int hasil=Bil*30000;
           txttotal.setText(""+hasil);
       }else if (cmbhari.getSelectedItem()=="Jumat"){
           int hasil=Bil*35000;
           txttotal.setText(""+hasil);
       }else if (cmbhari.getSelectedItem()=="Sabtu"){
           int hasil=Bil*40000;
           txttotal.setText(""+hasil);
       }else {
           int hasil=Bil*40000;
           txttotal.setText(""+hasil);
       }
   }             


Source Code pada button Verifikasi.
    private void btnverifikasiActionPerformed(java.awt.event.ActionEvent evt) {                                             
        // TODO add your handling code here:
        String nama = txtnama.getText();
        String studio = null;
       
        if (Studio1.isSelected()){
            studio="Studio1";
        }else if (Studio2.isSelected()){
            studio="Studio2";
        }else if (Studio3.isSelected()){
            studio="Studio3";
        }else if (Studio4.isSelected()){
            studio="Studio4";
        }
       
        String judul = LblJudul.getText();
        String jam = (String) cmbjam.getSelectedItem();
        String hari = (String) cmbhari.getSelectedItem();
        String nokursi = (String) cmbkursi.getSelectedItem();
        String jumlah = txtjml.getText();
        String total = txttotal.getText();

        if (txtnama.getText().isEmpty()||LblJudul.getText().isEmpty()||cmbjam.getSelectedItem().toString().isEmpty()||cmbhari.getSelectedItem().toString().isEmpty()||cmbkursi.getSelectedItem().toString().isEmpty()||txtjml.getText().isEmpty()||txttotal.getText().isEmpty()){
           JOptionPane.showMessageDialog(null, "error :setiap kolom harus diisi","pesan kesalahan", JOptionPane.WARNING_MESSAGE);
        }
        else{
           String kd = txtjml.getText();
           boolean sudah=false;
           for (int i = 0; i < tab.getRowCount(); i++) {
               if(kd.equals(tab.getValueAt(i, 1))){
                model.setValueAt(txtnama.getText(),tab.getSelectedRow(),1);
                model.setValueAt(studio,tab.getSelectedRow(),2);
                model.setValueAt(LblJudul.getText(),tab.getSelectedRow(),3);
                model.setValueAt(cmbjam.getSelectedItem().toString(),tab.getSelectedRow(),4);
                model.setValueAt(cmbhari.getSelectedItem().toString(),tab.getSelectedRow(),5);
                model.setValueAt(cmbkursi.getSelectedItem().toString(),tab.getSelectedRow(),6);
                model.setValueAt(txtjml.getText(),tab.getSelectedRow(),7);
                model.setValueAt(txttotal.getText(),tab.getSelectedRow(),8);
                sudah = true;
               }  
           }
           if(!sudah){
               model.insertRow(model.getRowCount(),new Object[]{max+1,nama,studio,judul,jam,hari,nokursi,jumlah,total});
               max++;
           }
         }        
    }                                            

    private void Studio1ActionPerformed(java.awt.event.ActionEvent evt) {                                       
        // TODO add your handling code here:
        LblJudul.setText("IRON MAN 2");
    }                                      

    private void Studio2ActionPerformed(java.awt.event.ActionEvent evt) {                                       
        // TODO add your handling code here:
        LblJudul.setText("The Book of Eli");
    }                                      

    private void Studio3ActionPerformed(java.awt.event.ActionEvent evt) {                                        
        // TODO add your handling code here:
        LblJudul.setText("GREEN ZONE");
    }                                      

    private void Studio4ActionPerformed(java.awt.event.ActionEvent evt) {                                       
        // TODO add your handling code here:
        LblJudul.setText("HURT LOCKER");
    }                                      

    private void cmbjamActionPerformed(java.awt.event.ActionEvent evt) {                                       
        // TODO add your handling code here:
    }                                     

    private void btnhapusActionPerformed(java.awt.event.ActionEvent evt) {                                        
        // TODO add your handling code here:
        model.removeRow(tab.getSelectedRow());
        txtnama.setText("");
        buttonGroupStudio.clearSelection();
        LblJudul.setText("");
        cmbjam.setSelectedItem("--- Pilih Jam ---");
        cmbhari.setSelectedItem("--- Pilih Hari ---");
        cmbhari.setSelectedItem("--- Pilih Posisi Kursi ---");
        txtjml.setText("");
        txttotal.setText("");
        max=0;
            for (int i = 0; i < tab.getRowCount(); i++) {
                model.setValueAt(max+1, i, 0);
                max++;}         
    }                                       

    private void tabMouseClicked(java.awt.event.MouseEvent evt) {                                
        // TODO add your handling code here:
        txtnama.setText(String.valueOf(model.getValueAt(tab.getSelectedRow(), 1).toString()));
        Studio1.setText(String.valueOf(model.getValueAt(tab.getSelectedRow(), 2).toString()));
        LblJudul.setText(String.valueOf(model.getValueAt(tab.getSelectedRow(), 3).toString()));
        cmbjam.setSelectedItem(String.valueOf(model.getValueAt(tab.getSelectedRow(), 4).toString()));
        cmbhari.setSelectedItem(String.valueOf(model.getValueAt(tab.getSelectedRow(), 5).toString()));
        cmbkursi.setSelectedItem(String.valueOf(model.getValueAt(tab.getSelectedRow(), 6).toString()));
        txtjml.setText(String.valueOf(model.getValueAt(tab.getSelectedRow(), 7).toString()));
        txttotal.setText(String.valueOf(model.getValueAt(tab.getSelectedRow(), 8).toString()));
    }

Source Code pada button Keluar.
private void btnkeluarActionPerformed(java.awt.event.ActionEvent evt) {                                          
        // TODO add your handling code here:
        System.exit(0);
    }

Jika ingin Download Aplikasinya, Klik Disini!
                                              
Oke. Sekian contoh mengaplikasikan pemprograman Java NetBeans yang saya berikan. Semoga bisa bermanfaat bagi kalian yang membaca blog saya. ^^,)
Previous
Next Post »

3 comments

Write comments
Rofiq
AUTHOR
May 23, 2016 at 4:01 PM delete

link nya mati gan, tolong di perbaiki

Reply
avatar
May 15, 2018 at 6:03 AM delete

Gan, mau nanya model itu dari variabel mana

Reply
avatar
Biodata
AUTHOR
November 27, 2019 at 3:40 AM delete

Kk aku mau nnyak..cara nampilkan textarea gimana?

Reply
avatar