Blogroll

This is default featured slide 1 title

Go to Blogger edit html and find these sentences.Now replace these sentences with your own descriptions.

This is default featured slide 2 title

Go to Blogger edit html and find these sentences.Now replace these sentences with your own descriptions.

This is default featured slide 3 title

Go to Blogger edit html and find these sentences.Now replace these sentences with your own descriptions.

This is default featured slide 4 title

Go to Blogger edit html and find these sentences.Now replace these sentences with your own descriptions.

This is default featured slide 5 title

Go to Blogger edit html and find these sentences.Now replace these sentences with your own descriptions.

Kamis, 30 Mei 2013

Contoh Program AWT & SWING Pada Java


package tugaspraktikum8;

import java.awt.Dimension;
import java.awt.Toolkit;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import javax.swing.JOptionPane;
import javax.swing.JTable;
import javax.swing.UIManager;
import javax.swing.UnsupportedLookAndFeelException;
import javax.swing.table.DefaultTableModel;

public final class FormData extends javax.swing.JFrame {
    String curLF = "javax.swing.plaf.metal.MetalLookAndFeel";
    public DefaultTableModel tabModel;
    Connection conn;
    public FormData() {
        initComponents();
        Dimension dim = Toolkit.getDefaultToolkit().getScreenSize();
        int x = (dim.width-getWidth())/2;
        int y = (dim.height-getHeight())/2;
        setLocation(x, y);
        setJTable();
    }
    @SuppressWarnings("unchecked")
    // <editor-fold defaultstate="collapsed" desc="Generated Code">                        
    private void initComponents() {

        jScrollPane1 = new javax.swing.JScrollPane();
        TabelData = new javax.swing.JTable();
        BDelete = new javax.swing.JButton();
        Search = new javax.swing.JComboBox();
        txtSearch = new javax.swing.JTextField();
        BSearch = new javax.swing.JButton();

        setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
        setPreferredSize(new java.awt.Dimension(730, 450));
        getContentPane().setLayout(null);

        TabelData.setBorder(javax.swing.BorderFactory.createLineBorder(new java.awt.Color(0, 0, 0)));
        TabelData.setFont(new java.awt.Font("Cooper Black", 0, 12)); // NOI18N
        TabelData.setModel(new javax.swing.table.DefaultTableModel(
            new Object [][] {
                {null, null, null, null},
                {null, null, null, null},
                {null, null, null, null},
                {null, null, null, null},
                {null, null, null, null},
                {null, null, null, null},
                {null, null, null, null},
                {null, null, null, null},
                {null, null, null, null},
                {null, null, null, null},
                {null, null, null, null},
                {null, null, null, null},
                {null, null, null, null},
                {null, null, null, null},
                {null, null, null, null},
                {null, null, null, null},
                {null, null, null, null},
                {null, null, null, null},
                {null, null, null, null},
                {null, null, null, null},
                {null, null, null, null},
                {null, null, null, null},
                {null, null, null, null},
                {null, null, null, null},
                {null, null, null, null},
                {null, null, null, null},
                {null, null, null, null},
                {null, null, null, null},
                {null, null, null, null},
                {null, null, null, null}
            },
            new String [] {
                "NO.", "NIM", "NAMA", "JURUSAN"
            }
        ));
        TabelData.setToolTipText("Klik Tabel");
        TabelData.setColumnSelectionAllowed(true);
        TabelData.addMouseListener(new java.awt.event.MouseAdapter() {
            public void mouseClicked(java.awt.event.MouseEvent evt) {
                TabelDataMouseClicked(evt);
            }
        });
        jScrollPane1.setViewportView(TabelData);
        TabelData.getColumnModel().getSelectionModel().setSelectionMode(javax.swing.ListSelectionModel.SINGLE_SELECTION);
        TabelData.getColumnModel().getColumn(0).setResizable(false);
        TabelData.getColumnModel().getColumn(1).setResizable(false);
        TabelData.getColumnModel().getColumn(2).setResizable(false);
        TabelData.getColumnModel().getColumn(3).setResizable(false);

        getContentPane().add(jScrollPane1);
        jScrollPane1.setBounds(10, 20, 580, 190);

        BDelete.setText("Hapus");
        BDelete.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                BDeleteActionPerformed(evt);
            }
        });
        getContentPane().add(BDelete);
        BDelete.setBounds(480, 240, 110, 30);

        Search.setFont(new java.awt.Font("Cooper Black", 1, 12)); // NOI18N
        Search.setModel(new javax.swing.DefaultComboBoxModel(new String[] { "NIM", "NAMA", "JURUSAN" }));
        Search.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                SearchActionPerformed(evt);
            }
        });
        getContentPane().add(Search);
        Search.setBounds(10, 240, 120, 32);

        txtSearch.setFont(new java.awt.Font("Cooper Black", 0, 12)); // NOI18N
        txtSearch.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                txtSearchActionPerformed(evt);
            }
        });
        txtSearch.addKeyListener(new java.awt.event.KeyAdapter() {
            public void keyTyped(java.awt.event.KeyEvent evt) {
                txtSearchKeyTyped(evt);
            }
        });
        getContentPane().add(txtSearch);
        txtSearch.setBounds(140, 240, 210, 32);

        BSearch.setText("Search");
        BSearch.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                BSearchActionPerformed(evt);
            }
        });
        getContentPane().add(BSearch);
        BSearch.setBounds(360, 240, 110, 32);

        pack();
    }// </editor-fold>                      
    private void BDeleteActionPerformed(java.awt.event.ActionEvent evt) {                                      
        Delete_Data();
    }                                      
   
    private void BSearchActionPerformed(java.awt.event.ActionEvent evt) {                                      
        String sql;
        int pilih = Search.getSelectedIndex();
        String cari = txtSearch.getText().toUpperCase();
        try {
            conn.close();
            Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
            conn=DriverManager.getConnection("jdbc:odbc:Data");
            if(pilih==0)
            sql ="Select * from Data WHERE NIM ='" +txtSearch.getText() + "'";
            else if(pilih==1)
            sql ="Select * from Data WHERE NAMA Like '%" +txtSearch.getText() + "%'";
            else{
            sql ="Select * from Data WHERE JURUSAN Like '%" +txtSearch.getText() + "%'";
            }
            PreparedStatement st = conn.prepareStatement(sql);
            ResultSet rs =st.executeQuery();
            DeleteIsiJTable();
            int NO=0;
            while (rs.next()) {
                NO++;
                String NIM = rs.getString("NIM");
                String NAMA = rs.getString("NAMA");
                String JURUSAN = rs.getString("JURUSAN");
                Object [] data = {NO,NIM, NAMA, JURUSAN};
                tabModel.addRow(data);
            }
            if(tabModel.getRowCount()>0){
            JOptionPane.showMessageDialog(this,"Data Ditemukan ");
            txtSearch.setText("");
            }else{
            JOptionPane.showMessageDialog(this,"Data Tidak Ditemukan.. ");
            txtSearch.setText("");
            tampilDataKeJTable();}
        }
        catch (ClassNotFoundException se) {}
        catch (SQLException se) {}
    }                                      
    private void SearchActionPerformed(java.awt.event.ActionEvent evt) {                                      
    }                                    
    private void TabelDataMouseClicked(java.awt.event.MouseEvent evt) {                                      
    ambilData_dari_JTable();
    }                                    

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

    private void txtSearchKeyTyped(java.awt.event.KeyEvent evt) {                                  
int pilih = Search.getSelectedIndex();
int banyak=txtSearch.getText().length();
if(pilih==0){
        if (banyak >10) {
            JOptionPane.showMessageDialog(null, "Karakter yang Anda Masukkan Lebih dari 9 Karakter");
        txtSearch.setText("");
        }
}else if(pilih==1){
        if (banyak >25) {
            JOptionPane.showMessageDialog(null, "Karakter yang Anda Masukkan Lebih dari 25 Karakter");
        txtSearch.setText("");
        }
    }else{
        if (banyak >50) {
            JOptionPane.showMessageDialog(null, "Karakter yang Anda Masukkan Lebih dari 50 Karakter");
        txtSearch.setText("");
        }  
}
// TODO add your handling code here:
    }                                
    public static void main(String args[]) throws ClassNotFoundException, InstantiationException, IllegalAccessException, UnsupportedLookAndFeelException {
            UIManager.setLookAndFeel("com.sun.java.swing.plaf.nimbus.NimbusLookAndFeel");
            UIManager.put("EditorTabDisplayerUI", "icare.ui.tweak.tab.NoTabsTabDisplayerUI");
            java.awt.EventQueue.invokeLater(new Runnable(){
         
            public void run() {
                new FormData().setVisible(true);  
               
            }
        });
    }
    // Variables declaration - do not modify                    
    private javax.swing.JButton BDelete;
    private javax.swing.JButton BSearch;
    private javax.swing.JComboBox Search;
    private javax.swing.JTable TabelData;
    private javax.swing.JScrollPane jScrollPane1;
    private javax.swing.JTextField txtSearch;
    // End of variables declaration                  
private void getData(){
  try{
        Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
        conn=DriverManager.getConnection("jdbc:odbc:Data");
        String sql="Select * from Data";
        PreparedStatement st=conn.prepareStatement(sql);
        ResultSet rs=st.executeQuery();
        String NIM,NAMA,JURUSAN;
        int NO=0;
        while(rs.next()){
         NO=NO+1;
         NIM=rs.getString("NIM");
         NAMA=rs.getString("NAMA");
         JURUSAN=rs.getString("JURUSAN");
         Object Data[]={NO,NIM,NAMA,JURUSAN};
         tabModel.addRow(Data);
        }
          st.close();
          conn.close();
    }
    catch (ClassNotFoundException cnfe) {    
           System.out.println("Class Driver tidak ditemukan.. : " + cnfe);
           System.exit(0);
    }
    catch (SQLException sqle) {      
           System.out.println("Proses Query Gagal = " + sqle);
           System.exit(0);
    }
    catch(Exception e){
           System.out.println("Koneksi Access Gagal " +e.getMessage());
           System.exit(0);
    }  
}

void ambilData_dari_JTable() {
    int row = TabelData.getSelectedRow();
    String NIM = tabModel.getValueAt(row, 1).toString();
    String NAMA = tabModel.getValueAt(row, 2).toString();
    String JURUSAN = tabModel.getValueAt(row, 3).toString();
  }
public void DeleteIsiJTable() {
    int row = tabModel.getRowCount();
    for (int i = 0; i < row; i++) {
      tabModel.removeRow(0);
    }
  }
public void tampilDataKeJTable() {
    DeleteIsiJTable();
    try {
        conn.close();
        Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
        conn=DriverManager.getConnection("jdbc:odbc:Data");  
        String sql="Select * from Data";
        PreparedStatement st=conn.prepareStatement(sql);
        ResultSet rs=st.executeQuery();
        String NIM,NAMA,JURUSAN;
        int NO=0;
        while(rs.next()){
         NO=NO+1;
         NIM=rs.getString("NIM");
         NAMA=rs.getString("NAMA");
         JURUSAN=rs.getString("JURUSAN");
         Object Data[]={NO,NIM,NAMA,JURUSAN};
         tabModel.addRow(Data);
      }
  }
    catch (Exception e) {}
}
public void Delete_Data() {
    ambilData_dari_JTable();
    int ok = JOptionPane.showConfirmDialog(this,
        "Anda Yakin Ingin MengDelete Data Ini", "Konfirmasi MengDelete Data",JOptionPane.YES_NO_OPTION);
    if (ok == 0) {
      try {
       Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
       conn=DriverManager.getConnection("jdbc:odbc:Data");
        String sql = "DELETE FROM Data WHERE NIM = ?";
        PreparedStatement st = conn.prepareStatement(sql);
       
        int rs=st.executeUpdate();
        if(rs>0){
        tampilDataKeJTable();
        JOptionPane.showMessageDialog(this,"Data Sudah diDelete");
        }
       
      } catch (Exception se) {
         JOptionPane.showMessageDialog(this,"Gagal Hapus Data.. ");
       }
     
    }
    }
private void setJTable(){
    String [] JudulKolom={"NO","NIM","NAMA","JURUSAN"};
    tabModel = new DefaultTableModel(null, JudulKolom){
                  boolean[] canEdit = new boolean [] { false, false, false, false};
                  @Override
                  public boolean isCellEditable(int rowIndex, int columnIndex) {
                   return canEdit [columnIndex];
                  }
              };
    TabelData.setModel(tabModel);
    TabelData.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);
    TabelData.getColumnModel().getColumn(0).setPreferredWidth(25);
    TabelData.getColumnModel().getColumn(1).setPreferredWidth(120);
    TabelData.getColumnModel().getColumn(2).setPreferredWidth(180);
    TabelData.getColumnModel().getColumn(3).setPreferredWidth(230);
    getData();
}

}



Output nya sebagai berikut :


Minggu, 05 Mei 2013

Pengenalan Array

Pengenalan Array Pada Java

Jika sekumpulan data digabungkan dalam satu unit, hasilnya adalah suatu struktur data. Data struktur dapat berupa struktur yang sangat kompleks, akan tetapi dalam banyak aplikasi, data struktur yang cocok hanya terdiri dari kumpulan data berurutan. Struktur data sederhana seperti ini bisa berupa array atau record.
Istilah "record" sebetulnya tidak digunakan pada Java. Suatu record pada intinya mirip dengan objek pada Java yang hanya memiliki variabel instansi tanpa metode instansi. Beberapa bahasa pemrograman lain yang tidak mendukung objek biasanya mendukung record. Dalam bahasa C yang bukan bahasa berorientasi objek, misalnya, memiliki tipe data record, dimana pada C disebut "struct". Data pada record -- dalam Java, adalah variabel instansi suatu objek -- disebut field suatu record. Masing-masing item disebut nama field. Dalam Java, nama field adalah nama variabel instansi. Perbedaan sifat dari suatu record adalah bahwa item pada record dipanggil berdasarkan namanya, dan field yang berbeda dapat berupa tipe yang berbeda. Misalnya, kelas Orang didefisikan sebagai :

class Orang {
    String nama;
    int nomorID;
    Date tanggalLahir;
    int umur;
}
maka objek dari kelas Orang bisa disebut juga sebagai record dengan 4 field. Nama fieldnya adalah nama, nomorID, tanggalLahir dan umur. Lihat bahwa tipe datanya berbeda-beda yaitu String, int, dan Date.
Karena record hanya merupakan bagian lebih kecil dari objek, kita tidak akan bahas lebih lanjut di sini.
Seperti record, suatu array adalah kumpulan item. Akan tetapi, item pada record dipanggil dengan nama, sedangkan item pada array dinomori, dan masing-masing item dipanggil besarkan nomor posisi pada array tersebut. Semua item pada array harus bertipe sama. Definisi suatu array adalah : kumpulan item bernomor yang semuanya bertipe sama. Jumlah item dalam suatu array disebut panjang array. Nomor posisi dari array disebut indeks item tersebut dalam array. Tipe dari item tersebut disebut tipe dasar dari array.
Tipe dasar suatu array bisa berupa tipe Java apa saja, baik berupa tipe primitif, nama kelas, atau nama interface. Jika tipe dasar suatu array adalah int, maka array tersebut disebut "array int". Suatu array bertipe String disebut "array String". Akan tetapi array bukan urutan int atau urutan String atau urutan nilai bertipe apapun. Lebih baik jika array adalah urutan variabel bertipe int atau String atau tipe lainnya.
Seperti biasa, ada dua kemungkinan kegunaan variabel : sebagai nama suatu lokasi di memori, dan nama suatu nilai yang disimpan pada lokasi memori. Setiap posisi pada array bersifat seperti variabel. Setiap posisi dapat menyimpan nilai dengan tipe tertentu (yaitu tipe dasar array). Isinya bisa diganti kapanpun. Nilai tersebut disimpan di dalam array. Array merupakan kontainer bukan kumpulan nilai.
Item pada array (maksudnya setiap anggota variabel dalam array tersebut) sering juga disebut elemen array. Dalam Java, elemen array selalu dinomori mulai dari nol. Yaitu, indeks dari elemen pertama suatu array adalah nol. Jika panjang array adalah N, maka indeks elemen terakhir adalah N-1. Sekali array dibuat, maka panjangnya tidak bisa diubah lagi.
Dalam Java, array adalah objek. Ada beberapa konsekuensi yang lahir dari fakta ini. Array harus dibuat dengan operator new. Variabel tidak bisa menyimpan array; variabel hanya bisa merujuk pada array. Variabel lain yang bisa merujuk array juga bisa bernilai null yang berarti ia tidak merujuk pada lokasi memori apapun. Seperti objek lain, array juga bagian dari suatu kelas, di mana seperti kelas lain adalah kelas turunan dari kelas Object. Elemen array pada dasarnya adalah variabel instansi dalam objek array, kecuali mereka dipanggil dalam indeksnya bukan namanya.
Meskipun array berupa objek, ada beberapa perbedaan antara array dan objek lainnya, dan ada beberapa fitur khusus Java untuk membuat dan menggunakan array.

Sumber : http://achmadnurfadillah.blogspot.com/2012/11/resume-materi-array.html



Contoh dalam pembuatan program Average, Max, dan Min


dan Outputnya adalah sebagai berikut :



Dan contoh pembuatan matriks 4x4 beserta transposenya barikut sintaksnya :





Kemudian Outputnya seperti :