andoraiko

Program Data Inventory - UTS Pemrograman II - Fernando R - 181021400222

Nov 7th, 2020
86
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 24.64 KB | None | 0 0
  1. /*
  2.  * To change this license header, choose License Headers in Project Properties.
  3.  * To change this template file, choose Tools | Templates
  4.  * and open the template in the editor.
  5.  */
  6. package penjualan;
  7. import java.sql.*;
  8. import javax.swing.JOptionPane;
  9. import javax.swing.table.DefaultTableModel;
  10. import java.util.Scanner;
  11. import java.awt.*;
  12. /**
  13.  *
  14.  * @author Fernando
  15.  */
  16. public class produk extends javax.swing.JFrame {
  17.     DefaultTableModel tabModel;
  18.     ResultSet RsProduk=null;
  19.     /**
  20.      * Creates new form produk
  21.      */
  22.     public produk() {
  23.         initComponents();
  24.        
  25.         Dimension screenSize=Toolkit.getDefaultToolkit().getScreenSize();
  26.         Dimension frameSize=this.getSize();
  27.         if(frameSize.height > screenSize.height){
  28.         frameSize.height=screenSize.height;
  29.         }
  30.         if(frameSize.width > screenSize.width){
  31.         frameSize.width=screenSize.width;
  32.         }
  33.         this.setLocation((screenSize.width - frameSize.width) / 2,
  34.         (screenSize.height = screenSize.height) / 20);
  35.        
  36.         //fungsi Tampil data dan set edit off dijalankan saat aplikasi di run
  37.         tampilData();
  38.         SetEditOff();
  39.     }
  40.    
  41.     //fungsi untuk menampilkan data produk ke dalam tabel
  42.     private void tampilData(){
  43.         try{
  44.             Object[] judul_kolom = {"Kode Barang", "Nama Barang", "Satuan", "Harga", "Stok", "Create Date"};
  45.             tabModel=new DefaultTableModel(null,judul_kolom);
  46.             TabelProduk.setModel(tabModel);
  47.            
  48.             Connection conn=(Connection)koneksi.koneksiDB();
  49.             Statement stt=conn.createStatement();
  50.             tabModel.getDataVector().removeAllElements();
  51.            
  52.             RsProduk=stt.executeQuery("SELECT * from produk ");  
  53.             while(RsProduk.next()){
  54.                 Object[] data={
  55.                     RsProduk.getString("KodeProduk"),
  56.                     RsProduk.getString("NamaProduk"),
  57.                     RsProduk.getString("Satuan"),
  58.                     RsProduk.getString("Harga"),
  59.                     RsProduk.getString("Stok"),
  60.                     RsProduk.getString("CreateDate")        
  61.                 };
  62.                tabModel.addRow(data);
  63.             }                
  64.         } catch (Exception ex) {
  65.         System.err.println(ex.getMessage());
  66.         }
  67.         // disable button
  68.         jButtonSave.setEnabled(false);
  69.         jButtonUpdate.setEnabled(false);
  70.         jButtonDelete.setEnabled(false);
  71.         jButtonCancel.setEnabled(false);
  72.     }
  73.    
  74.     //menampilkan data ke form saat data pada tabel di klik
  75.    void tblKeForm(){
  76.         jTextKodeProduk.setText(tabModel.getValueAt(TabelProduk.getSelectedRow(),0)+"");
  77.         jTextNama.setText(tabModel.getValueAt(TabelProduk.getSelectedRow(),1)+"");
  78.         jComboBoxSatuan.setSelectedItem(tabModel.getValueAt(TabelProduk.getSelectedRow(),2)+"");
  79.         jTextHarga.setText(tabModel.getValueAt(TabelProduk.getSelectedRow(),3)+"");
  80.         jTextStok.setText(tabModel.getValueAt(TabelProduk.getSelectedRow(),4)+"");
  81.        
  82.         jButtonUpdate.setEnabled(true);
  83.         jButtonDelete.setEnabled(true);
  84.         jButtonCancel.setEnabled(true);
  85.         jButtonSave.setEnabled(false);
  86.     }
  87.    
  88.    //membersihkan form
  89.    private void BersihData(){
  90.         jTextKodeProduk.setText("");
  91.         jTextNama.setText("");
  92.         jComboBoxSatuan.setSelectedIndex(0);
  93.         jTextHarga.setText("");
  94.         jTextStok.setText("");
  95.     }
  96.    
  97.    //disable form
  98.    private void SetEditOff(){
  99.         jTextKodeProduk.setEnabled(false);
  100.         jTextNama.setEnabled(false);
  101.         jComboBoxSatuan.setEnabled(false);
  102.         jTextHarga.setEnabled(false);
  103.         jTextStok.setEnabled(false);
  104.    }
  105.    
  106.    
  107.    private void seteditOn(){
  108.         jTextKodeProduk.setEnabled(true);
  109.         jTextNama.setEnabled(true);
  110.         jComboBoxSatuan.setEnabled(true);
  111.         jTextHarga.setEnabled(true);
  112.         jTextStok.setEnabled(true);
  113.    }
  114.  
  115.     /**
  116.      * This method is called from within the constructor to initialize the form.
  117.      * WARNING: Do NOT modify this code. The content of this method is always
  118.      * regenerated by the Form Editor.
  119.      */
  120.     @SuppressWarnings("unchecked")
  121.     // <editor-fold defaultstate="collapsed" desc="Generated Code">                          
  122.     private void initComponents() {
  123.  
  124.         jLabelHeader = new javax.swing.JLabel();
  125.         jLabelKodeProduk = new javax.swing.JLabel();
  126.         jTextKodeProduk = new javax.swing.JTextField();
  127.         jLabelNama = new javax.swing.JLabel();
  128.         jTextNama = new javax.swing.JTextField();
  129.         jLabelSatuan = new javax.swing.JLabel();
  130.         jComboBoxSatuan = new javax.swing.JComboBox();
  131.         jLabelHarga = new javax.swing.JLabel();
  132.         jTextHarga = new javax.swing.JTextField();
  133.         jLabelStok = new javax.swing.JLabel();
  134.         jTextStok = new javax.swing.JTextField();
  135.         jButtonAdd = new javax.swing.JButton();
  136.         jButtonSave = new javax.swing.JButton();
  137.         jButtonUpdate = new javax.swing.JButton();
  138.         jButtonDelete = new javax.swing.JButton();
  139.         jButtonCancel = new javax.swing.JButton();
  140.         jScrollPane1 = new javax.swing.JScrollPane();
  141.         TabelProduk = new javax.swing.JTable();
  142.  
  143.         setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
  144.  
  145.         jLabelHeader.setBackground(new java.awt.Color(0, 0, 51));
  146.         jLabelHeader.setFont(new java.awt.Font("Tahoma", 1, 18)); // NOI18N
  147.         jLabelHeader.setForeground(new java.awt.Color(255, 255, 255));
  148.         jLabelHeader.setHorizontalAlignment(javax.swing.SwingConstants.CENTER);
  149.         jLabelHeader.setText("Inventory Product");
  150.         jLabelHeader.setOpaque(true);
  151.  
  152.         jLabelKodeProduk.setText("SKU Produk");
  153.  
  154.         jLabelNama.setText("Name");
  155.  
  156.         jLabelSatuan.setText("Quantity");
  157.  
  158.         jComboBoxSatuan.setModel(new javax.swing.DefaultComboBoxModel(new String[] { "Pcs", "Dus", "Kg" }));
  159.  
  160.         jLabelHarga.setText("Price");
  161.  
  162.         jLabelStok.setText("Stock");
  163.  
  164.         jButtonAdd.setText("Add Product");
  165.         jButtonAdd.addActionListener(new java.awt.event.ActionListener() {
  166.             public void actionPerformed(java.awt.event.ActionEvent evt) {
  167.                 jButtonAddActionPerformed(evt);
  168.             }
  169.         });
  170.  
  171.         jButtonSave.setText("Save");
  172.         jButtonSave.addActionListener(new java.awt.event.ActionListener() {
  173.             public void actionPerformed(java.awt.event.ActionEvent evt) {
  174.                 jButtonSaveActionPerformed(evt);
  175.             }
  176.         });
  177.  
  178.         jButtonUpdate.setText("Update");
  179.         jButtonUpdate.addActionListener(new java.awt.event.ActionListener() {
  180.             public void actionPerformed(java.awt.event.ActionEvent evt) {
  181.                 jButtonUpdateActionPerformed(evt);
  182.             }
  183.         });
  184.  
  185.         jButtonDelete.setText("Delete");
  186.         jButtonDelete.addActionListener(new java.awt.event.ActionListener() {
  187.             public void actionPerformed(java.awt.event.ActionEvent evt) {
  188.                 jButtonDeleteActionPerformed(evt);
  189.             }
  190.         });
  191.  
  192.         jButtonCancel.setText("Cancel");
  193.         jButtonCancel.addActionListener(new java.awt.event.ActionListener() {
  194.             public void actionPerformed(java.awt.event.ActionEvent evt) {
  195.                 jButtonCancelActionPerformed(evt);
  196.             }
  197.         });
  198.  
  199.         TabelProduk.setModel(new javax.swing.table.DefaultTableModel(
  200.             new Object [][] {
  201.                 {null, null, null, null},
  202.                 {null, null, null, null},
  203.                 {null, null, null, null},
  204.                 {null, null, null, null}
  205.             },
  206.             new String [] {
  207.                 "Title 1", "Title 2", "Title 3", "Title 4"
  208.             }
  209.         ));
  210.         TabelProduk.addMouseListener(new java.awt.event.MouseAdapter() {
  211.             public void mouseClicked(java.awt.event.MouseEvent evt) {
  212.                 TabelProdukMouseClicked(evt);
  213.             }
  214.         });
  215.         jScrollPane1.setViewportView(TabelProduk);
  216.  
  217.         javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
  218.         getContentPane().setLayout(layout);
  219.         layout.setHorizontalGroup(
  220.             layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
  221.             .addComponent(jLabelHeader, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
  222.             .addGroup(layout.createSequentialGroup()
  223.                 .addContainerGap()
  224.                 .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
  225.                     .addComponent(jLabelNama)
  226.                     .addComponent(jLabelSatuan)
  227.                     .addComponent(jLabelHarga)
  228.                     .addComponent(jLabelStok)
  229.                     .addComponent(jLabelKodeProduk))
  230.                 .addGap(19, 19, 19)
  231.                 .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
  232.                     .addGroup(layout.createSequentialGroup()
  233.                         .addComponent(jButtonAdd)
  234.                         .addGap(10, 10, 10)
  235.                         .addComponent(jButtonCancel, javax.swing.GroupLayout.PREFERRED_SIZE, 111, javax.swing.GroupLayout.PREFERRED_SIZE))
  236.                     .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING, false)
  237.                         .addComponent(jTextHarga, javax.swing.GroupLayout.DEFAULT_SIZE, 259, Short.MAX_VALUE)
  238.                         .addComponent(jTextNama, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.PREFERRED_SIZE, 257, javax.swing.GroupLayout.PREFERRED_SIZE)
  239.                         .addComponent(jTextKodeProduk, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.PREFERRED_SIZE, 258, javax.swing.GroupLayout.PREFERRED_SIZE)
  240.                         .addComponent(jTextStok)
  241.                         .addComponent(jComboBoxSatuan, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.PREFERRED_SIZE, 95, javax.swing.GroupLayout.PREFERRED_SIZE)))
  242.                 .addGap(18, 18, 18)
  243.                 .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
  244.                     .addGroup(layout.createSequentialGroup()
  245.                         .addComponent(jButtonSave, javax.swing.GroupLayout.PREFERRED_SIZE, 78, javax.swing.GroupLayout.PREFERRED_SIZE)
  246.                         .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
  247.                         .addComponent(jButtonUpdate)
  248.                         .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
  249.                         .addComponent(jButtonDelete, javax.swing.GroupLayout.PREFERRED_SIZE, 72, javax.swing.GroupLayout.PREFERRED_SIZE)
  250.                         .addGap(0, 0, Short.MAX_VALUE))
  251.                     .addComponent(jScrollPane1, javax.swing.GroupLayout.DEFAULT_SIZE, 788, Short.MAX_VALUE))
  252.                 .addGap(20, 20, 20))
  253.         );
  254.         layout.setVerticalGroup(
  255.             layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
  256.             .addGroup(layout.createSequentialGroup()
  257.                 .addComponent(jLabelHeader, javax.swing.GroupLayout.PREFERRED_SIZE, 37, javax.swing.GroupLayout.PREFERRED_SIZE)
  258.                 .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
  259.                 .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
  260.                     .addGroup(layout.createSequentialGroup()
  261.                         .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
  262.                             .addComponent(jTextKodeProduk, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
  263.                             .addComponent(jLabelKodeProduk))
  264.                         .addGap(18, 18, 18)
  265.                         .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
  266.                             .addComponent(jTextNama, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
  267.                             .addComponent(jLabelNama))
  268.                         .addGap(18, 18, 18)
  269.                         .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
  270.                             .addComponent(jComboBoxSatuan, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
  271.                             .addComponent(jLabelSatuan))
  272.                         .addGap(18, 18, 18)
  273.                         .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
  274.                             .addComponent(jTextHarga, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
  275.                             .addComponent(jLabelHarga))
  276.                         .addGap(18, 18, 18)
  277.                         .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
  278.                             .addComponent(jTextStok, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
  279.                             .addComponent(jLabelStok)))
  280.                     .addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, 0, Short.MAX_VALUE))
  281.                 .addGap(28, 28, 28)
  282.                 .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
  283.                     .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
  284.                         .addComponent(jButtonAdd)
  285.                         .addComponent(jButtonCancel))
  286.                     .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
  287.                         .addComponent(jButtonSave)
  288.                         .addComponent(jButtonUpdate)
  289.                         .addComponent(jButtonDelete)))
  290.                 .addGap(21, 21, 21))
  291.         );
  292.  
  293.         pack();
  294.     }// </editor-fold>                        
  295.     //menangani proses saat button add di klik
  296.     private void jButtonAddActionPerformed(java.awt.event.ActionEvent evt) {                                          
  297.         // TODO add your handling code here:
  298.         BersihData();
  299.         jTextKodeProduk.requestFocus();
  300.         jButtonSave.setEnabled(true);
  301.         jButtonUpdate.setEnabled(false);
  302.         jButtonDelete.setEnabled(false);
  303.         seteditOn();
  304.     }                                          
  305.  
  306.     //menangani proses saat button save di klik
  307.     private void jButtonSaveActionPerformed(java.awt.event.ActionEvent evt) {                                            
  308.         // TODO add your handling code here:
  309.         String KodeProduk=jTextKodeProduk.getText();
  310.         String NamaProduk=jTextNama.getText();
  311.         String Satuan=jComboBoxSatuan.getSelectedItem().toString();
  312.         String Harga=jTextHarga.getText();
  313.         String Stok=jTextStok.getText();
  314.  
  315.         java.util.Date tanggal = new java.util.Date();
  316.         java.text.SimpleDateFormat TanggalFormat= new java.text.SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
  317.         String CreateDate=TanggalFormat.format(tanggal);
  318.  
  319.         if (KodeProduk.isEmpty() ) {
  320.             JOptionPane.showMessageDialog(null,"Kode produk tidak boleh kosong");
  321.             jTextKodeProduk.requestFocus();
  322.         }else if (NamaProduk.isEmpty()) {
  323.             JOptionPane.showMessageDialog(null,"Nama produk tidak boleh kosong");
  324.             jTextNama.requestFocus();
  325.         }else if (Satuan.isEmpty()) {
  326.             JOptionPane.showMessageDialog(null,"Satuan produk tidak boleh kosong");
  327.             jComboBoxSatuan.requestFocus();
  328.         }else if (Harga.isEmpty()) {
  329.             JOptionPane.showMessageDialog(null,"Harga produk tidak boleh kosong");
  330.             jTextHarga.requestFocus();
  331.         }else if (Stok.isEmpty()) {
  332.             JOptionPane.showMessageDialog(null,"Stok produk tidak boleh kosong");
  333.             jTextStok.requestFocus();
  334.         }
  335.         else if (!(new Scanner(Harga).hasNextInt())) {
  336.             JOptionPane.showMessageDialog(null,"Harga produk harus angka");
  337.             jTextHarga.requestFocus();
  338.         }else if (!(new Scanner(Stok).hasNextInt())) {
  339.             JOptionPane.showMessageDialog(null,"Stok produk harus angka");
  340.             jTextStok.requestFocus();
  341.         }else{
  342.             try{
  343.                 Connection conn=(Connection)koneksi.koneksiDB();
  344.                 Statement stt=conn.createStatement();
  345.                 stt.executeUpdate("insert into produk(KodeProduk,NamaProduk,Satuan,Harga,Stok,CreateDate)"+
  346.                     "VALUES('"+KodeProduk+"','"+NamaProduk+"','"+Satuan+"','"+Harga+"','"+Stok+"','"+CreateDate+"')");
  347.                 BersihData();
  348.                 tampilData();
  349.                 SetEditOff();
  350.                 JOptionPane.showMessageDialog(this,"Data berhasil disimpan","Success",JOptionPane.INFORMATION_MESSAGE);
  351.             } catch(SQLException e){
  352.                 JOptionPane.showMessageDialog(this,"Simpan data gagal\n"+e.getMessage(),"Error",JOptionPane.ERROR_MESSAGE);
  353.             }
  354.         }
  355.  
  356.     }                                          
  357.  
  358.     //menangani proses saat button Update di klik
  359.     private void jButtonUpdateActionPerformed(java.awt.event.ActionEvent evt) {                                              
  360.         // TODO add your handling code here:
  361.         String KodeProduk=jTextKodeProduk.getText();
  362.         String NamaProduk=jTextNama.getText();
  363.         String Satuan=jComboBoxSatuan.getSelectedItem().toString();
  364.         String Harga=jTextHarga.getText();
  365.         String Stok=jTextStok.getText();
  366.  
  367.         java.util.Date tanggal = new java.util.Date();
  368.         java.text.SimpleDateFormat TanggalFormat= new java.text.SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
  369.         String CreateDate=TanggalFormat.format(tanggal);
  370.  
  371.         if (KodeProduk.isEmpty() ) {
  372.             JOptionPane.showMessageDialog(null,"Kode produk tidak boleh kosong");
  373.             jTextKodeProduk.requestFocus();
  374.         }else if (NamaProduk.isEmpty()) {
  375.             JOptionPane.showMessageDialog(null,"Nama produk tidak boleh kosong");
  376.             jTextNama.requestFocus();
  377.         }else if (Satuan.isEmpty()) {
  378.             JOptionPane.showMessageDialog(null,"Satuan produk tidak boleh kosong");
  379.             jComboBoxSatuan.requestFocus();
  380.         }else if (Harga.isEmpty()) {
  381.             JOptionPane.showMessageDialog(null,"Harga produk tidak boleh kosong");
  382.             jTextHarga.requestFocus();
  383.         }else if (Stok.isEmpty()) {
  384.             JOptionPane.showMessageDialog(null,"Stok produk tidak boleh kosong");
  385.             jTextStok.requestFocus();
  386.         }
  387.         else if (!(new Scanner(Harga).hasNextInt())) {
  388.             JOptionPane.showMessageDialog(null,"Harga produk harus angka");
  389.             jTextHarga.requestFocus();
  390.         }else if (!(new Scanner(Stok).hasNextInt())) {
  391.             JOptionPane.showMessageDialog(null,"Stok produk harus angka");
  392.             jTextStok.requestFocus();
  393.         }else{
  394.             try{
  395.                 Connection conn=(Connection)koneksi.koneksiDB();
  396.                 Statement stt=conn.createStatement();
  397.                 stt.executeUpdate("UPDATE produk SET NamaProduk='"+NamaProduk+"', Satuan='"+Satuan+"', Harga='"+Harga+"',"+
  398.                     "Stok='"+Stok+"' WHERE KodeProduk='"+KodeProduk+"'");
  399.                 BersihData();
  400.                 tampilData();
  401.                 SetEditOff();
  402.                 JOptionPane.showMessageDialog(this,"Data berhasil diubah","Success",JOptionPane.INFORMATION_MESSAGE);
  403.             } catch(SQLException e){
  404.                 JOptionPane.showMessageDialog(this,"Ubah data gagal\n"+e.getMessage(),"Error",JOptionPane.ERROR_MESSAGE);
  405.             }
  406.         }
  407.  
  408.     }                                            
  409.  
  410.     //menangani proses saat button delete di klik
  411.     private void jButtonDeleteActionPerformed(java.awt.event.ActionEvent evt) {                                              
  412.         // TODO add your handling code here:
  413.         String KodeProduk=jTextKodeProduk.getText();
  414.  
  415.         if (KodeProduk.isEmpty() ) {
  416.             JOptionPane.showMessageDialog(null,"Kode produk tidak boleh kosong");
  417.             jTextKodeProduk.requestFocus();
  418.         }else if(JOptionPane.showConfirmDialog(null,"Apakah anda yakin akan menghapus data ini?",
  419.             "Informasi",JOptionPane.OK_CANCEL_OPTION,JOptionPane.INFORMATION_MESSAGE)==JOptionPane.OK_OPTION){
  420.         try{
  421.             Connection conn=(Connection)koneksi.koneksiDB();
  422.             Statement stt=conn.createStatement();
  423.             stt.executeUpdate("DELETE FROM produk WHERE KodeProduk='"+KodeProduk+"'");
  424.             BersihData();
  425.             tampilData();
  426.             SetEditOff();
  427.             JOptionPane.showMessageDialog(this,"Data berhasil di hapus","Success",JOptionPane.INFORMATION_MESSAGE);
  428.         } catch(SQLException e){
  429.             JOptionPane.showMessageDialog(this,"Delete data gagal\n"+e.getMessage(),"Error",JOptionPane.ERROR_MESSAGE);
  430.         }
  431.         }
  432.     }                                            
  433.  
  434.     //menangani proses saat button cancel di klik
  435.     private void jButtonCancelActionPerformed(java.awt.event.ActionEvent evt) {                                              
  436.         // TODO add your handling code here:
  437.         BersihData();
  438.         jButtonSave.setEnabled(false);
  439.         jButtonUpdate.setEnabled(false);
  440.         jButtonDelete.setEnabled(false);
  441.         SetEditOff();
  442.     }                                            
  443.  
  444.     //menangani proses saat tabel produk di klik
  445.     private void TabelProdukMouseClicked(java.awt.event.MouseEvent evt) {                                        
  446.         // TODO add your handling code here:
  447.         seteditOn();
  448.         jTextKodeProduk.setEnabled(false);
  449.         tblKeForm();
  450.     }                                        
  451.  
  452.     /**
  453.      * @param args the command line arguments
  454.      */
  455.     public static void main(String args[]) {
  456.         /* Set the Nimbus look and feel */
  457.         //<editor-fold defaultstate="collapsed" desc=" Look and feel setting code (optional) ">
  458.         /* If Nimbus (introduced in Java SE 6) is not available, stay with the default look and feel.
  459.          * For details see http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.html
  460.          */
  461.         try {
  462.             for (javax.swing.UIManager.LookAndFeelInfo info : javax.swing.UIManager.getInstalledLookAndFeels()) {
  463.                 if ("Nimbus".equals(info.getName())) {
  464.                     javax.swing.UIManager.setLookAndFeel(info.getClassName());
  465.                     break;
  466.                 }
  467.             }
  468.         } catch (ClassNotFoundException ex) {
  469.             java.util.logging.Logger.getLogger(produk.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
  470.         } catch (InstantiationException ex) {
  471.             java.util.logging.Logger.getLogger(produk.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
  472.         } catch (IllegalAccessException ex) {
  473.             java.util.logging.Logger.getLogger(produk.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
  474.         } catch (javax.swing.UnsupportedLookAndFeelException ex) {
  475.             java.util.logging.Logger.getLogger(produk.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
  476.         }
  477.         //</editor-fold>
  478.  
  479.         /* Create and display the form */
  480.         java.awt.EventQueue.invokeLater(new Runnable() {
  481.             public void run() {
  482.                 new produk().setVisible(true);
  483.             }
  484.         });
  485.     }
  486.  
  487.     // Variables declaration - do not modify                    
  488.     private javax.swing.JTable TabelProduk;
  489.     private javax.swing.JButton jButtonAdd;
  490.     private javax.swing.JButton jButtonCancel;
  491.     private javax.swing.JButton jButtonDelete;
  492.     private javax.swing.JButton jButtonSave;
  493.     private javax.swing.JButton jButtonUpdate;
  494.     private javax.swing.JComboBox jComboBoxSatuan;
  495.     private javax.swing.JLabel jLabelHarga;
  496.     private javax.swing.JLabel jLabelHeader;
  497.     private javax.swing.JLabel jLabelKodeProduk;
  498.     private javax.swing.JLabel jLabelNama;
  499.     private javax.swing.JLabel jLabelSatuan;
  500.     private javax.swing.JLabel jLabelStok;
  501.     private javax.swing.JScrollPane jScrollPane1;
  502.     private javax.swing.JTextField jTextHarga;
  503.     private javax.swing.JTextField jTextKodeProduk;
  504.     private javax.swing.JTextField jTextNama;
  505.     private javax.swing.JTextField jTextStok;
  506.     // End of variables declaration                  
  507. }
  508.  
Add Comment
Please, Sign In to add comment