Modul NetBeans

25
Workshop Labkom UBL 9-10 February 2008 Membuat Aplikasi Dengan Java NetBeans Konsep NetBeans NetBeans Sebagai IDE ditujukan untuk memudahkan pemrograman java. Dalam NetBeans, pemrograman dilakukan berbasis visual dan even driven, persis seperti IDE lain, misal Borland Delphi dan Microsoft Visual Studio. Untuk membuat user interface, kita tidak perlu menggunakan teks program secara manual baris perbaris, tapi cukup klik pada komponen palette, teks program akan dihasilkan secara otomatis. Tampilan Awal IDE Net Beans Keterangan: 1.Jendela utama 2.Palette dan properties 3.Output/debugger console 4.Project explorer 5.Navigator

Transcript of Modul NetBeans

Page 1: Modul NetBeans

Workshop Labkom UBL 9-10 February 2008

Membuat Aplikasi Dengan Java NetBeans

Konsep NetBeans

NetBeans Sebagai IDE ditujukan untuk memudahkan pemrograman java. DalamNetBeans, pemrograman dilakukan berbasis visual dan even driven, persis seperti IDElain, misal Borland Delphi dan Microsoft Visual Studio.

Untuk membuat user interface, kita tidak perlu menggunakan teks program secaramanual baris perbaris, tapi cukup klik pada komponen palette, teks program akandihasilkan secara otomatis.

Tampilan Awal IDE Net Beans

Keterangan:1.Jendela utama2.Palette dan properties3.Output/debugger console4.Project explorer5.Navigator

Page 2: Modul NetBeans

Workshop Labkom UBL 9-10 February 2008

Membuat Sebuah Project

Untuk membuat sebuah project baru, pilih New Project pada menu File.Kemudian kita pilih Java pada kolom Categories dan Java Application pada kolomProjects.

Kemudian akan muncullah tampilan awal seperti dibawah ini:

Page 3: Modul NetBeans

Workshop Labkom UBL 9-10 February 2008

Untuk menampilkan form editor pada palette dan semua komponen GUI, kitaharus menambahkan sebuah file bertipe GUI. Caranya adlah pilih New File pada menuFile

Akan muncul jendela dialog seperti diatas, maka coba kita pilih Swing GUIForms pada kolom Categories, dan JFrame Form pada kolom File Types lalu tekantombol next.Maka akan muncul sebuah JFrame pada form editor dan palette pada sisi kanan.

Page 4: Modul NetBeans

Workshop Labkom UBL 9-10 February 2008

Mambuat program sederhana tanpa database

Coba kita buat tampilan seperti contoh gambar diatas menggunakan komponen-komponen yang ada pada palette.

Pada tab Source ada bagian yang tidak dapat diubah souce code nya, bagiantersebut adalah code yang berhubungan dengan GUI yang otomatis di-generate olehnetbeans, dan akan terus berubah seiring perkembangan program yang kita buat, terutamamengenai tampilan.

Bagian tersebut diberi background berbeda oleh netbeans, sehingga kita bisamembedakannya.

Source Code:

/** dataMhs.java** Created on February 9, 2008, 9:28 AM*/

package workshop;

Page 5: Modul NetBeans

Workshop Labkom UBL 9-10 February 2008

import javax.swing.JOptionPane;

/**** @author Administrator*/

public class dataMhs extends javax.swing.JFrame {

/** Creates new form dataMhs */public dataMhs() {

initComponents();grpJenkel.add(rdLaki);grpJenkel.add(rdPerempuan);

//tanggal Lahirfor(int i=1;i<=31;i++){

if(i<10)cmbTgl.addItem("0"+Integer.toString(i));else cmbTgl.addItem(Integer.toString(i));

}

//bulan lahir/*for(int i=1;i<=12;i++){

if(i<10)cmbBln.addItem("0"+Integer.toString(i));else cmbBln.addItem(Integer.toString(i));

}*/

//tahun lahirfor(int i=1970;i<=2015;i++){

cmbThn.addItem(Integer.toString(i));}

//bulan Lahir//for(int i=1;i<=12;i++)

}

//Bagian yang tidak dapat di-edit/** 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.*/

// <editor-fold defaultstate="collapsed" desc=" Generated Code ">private void initComponents() {

Page 6: Modul NetBeans

Workshop Labkom UBL 9-10 February 2008

jSpinner1 = new javax.swing.JSpinner();grpJenkel = new javax.swing.ButtonGroup();lblTest = new javax.swing.JLabel();lblNim = new javax.swing.JLabel();txtNim = new javax.swing.JTextField();jLabel1 = new javax.swing.JLabel();txtNama = new javax.swing.JTextField();jLabel2 = new javax.swing.JLabel();rdLaki = new javax.swing.JRadioButton();rdPerempuan = new javax.swing.JRadioButton();jLabel3 = new javax.swing.JLabel();jScrollPane1 = new javax.swing.JScrollPane();txtAlamat = new javax.swing.JTextArea();jLabel4 = new javax.swing.JLabel();txtTempat = new javax.swing.JTextField();jLabel5 = new javax.swing.JLabel();cmbBln = new javax.swing.JComboBox();cmbTgl = new javax.swing.JComboBox();cmbThn = new javax.swing.JComboBox();btnTampil = new javax.swing.JButton();

setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);setLocationByPlatform(true);

lblTest.setBackground(new java.awt.Color(204, 204, 0));lblTest.setFont(new java.awt.Font("Monotype Corsiva", 1, 24));lblTest.setForeground(new java.awt.Color(255, 0, 51));lblTest.setText("Data Mahasiswa");lblTest.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER);

lblNim.setText("NIM");

jLabel1.setText("Nama");

jLabel2.setText("Jenis Kelamin");

rdLaki.setText("Laki-Laki");rdLaki.setBorder(javax.swing.BorderFactory.createEmptyBorder(0, 0, 0, 0));rdLaki.setMargin(new java.awt.Insets(0, 0, 0, 0));

rdPerempuan.setText("Perempuan");rdPerempuan.setBorder(javax.swing.BorderFactory.createEmptyBorder(0, 0, 0, 0));rdPerempuan.setMargin(new java.awt.Insets(0, 0, 0, 0));

jLabel3.setText("Alamat");

Page 7: Modul NetBeans

Workshop Labkom UBL 9-10 February 2008

txtAlamat.setColumns(20);txtAlamat.setRows(5);jScrollPane1.setViewportView(txtAlamat);

jLabel4.setText("Tempat Lahir");

jLabel5.setText("Tanggal Lahir");

cmbBln.setModel(new javax.swing.DefaultComboBoxModel(new String[] {"Januari", "Februari", "Maret", "April", "Mei", "Juni", "Juli", "Agustus", "September","Oktober", "November", "Desember" }));

btnTampil.setForeground(new java.awt.Color(0, 0, 255));btnTampil.setText("Tampilkan");btnTampil.addActionListener(new java.awt.event.ActionListener() {

public void actionPerformed(java.awt.event.ActionEvent evt) {btnTampilActionPerformed(evt);

}});

org.jdesktop.layout.GroupLayout layout = neworg.jdesktop.layout.GroupLayout(getContentPane());

getContentPane().setLayout(layout);layout.setHorizontalGroup(

layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING).add(layout.createSequentialGroup()

.add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING).add(layout.createSequentialGroup()

.add(116, 116, 116)

.add(lblTest, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 222,org.jdesktop.layout.GroupLayout.PREFERRED_SIZE))

.add(layout.createSequentialGroup().add(50, 50, 50)

.add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING).add(lblNim).add(jLabel1).add(jLabel2).add(jLabel3).add(jLabel4).add(jLabel5))

.add(34, 34, 34)

.add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING).add(jScrollPane1, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE,

253, Short.MAX_VALUE)

Page 8: Modul NetBeans

Workshop Labkom UBL 9-10 February 2008

.add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING, false).add(layout.createSequentialGroup()

.add(rdLaki)

.add(28, 28, 28)

.add(rdPerempuan)).add(txtNama, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE,

207, Short.MAX_VALUE).add(txtNim, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE,

150, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)).add(txtTempat, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE,

168, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE).add(org.jdesktop.layout.GroupLayout.TRAILING,

layout.createSequentialGroup()

.add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING).add(btnTampil).add(layout.createSequentialGroup()

.add(cmbTgl,org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 51,org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)

.addPreferredGap(org.jdesktop.layout.LayoutStyle.UNRELATED).add(cmbBln,

org.jdesktop.layout.GroupLayout.PREFERRED_SIZE,org.jdesktop.layout.GroupLayout.DEFAULT_SIZE,org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)

.addPreferredGap(org.jdesktop.layout.LayoutStyle.UNRELATED).add(cmbThn,

org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 70,org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)))

.add(36, 36, 36))))).add(22, 22, 22))

);layout.setVerticalGroup(

layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING).add(layout.createSequentialGroup()

.addContainerGap()

.add(lblTest)

.addPreferredGap(org.jdesktop.layout.LayoutStyle.UNRELATED)

.add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE).add(lblNim).add(txtNim, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE,

org.jdesktop.layout.GroupLayout.DEFAULT_SIZE,org.jdesktop.layout.GroupLayout.PREFERRED_SIZE))

Page 9: Modul NetBeans

Workshop Labkom UBL 9-10 February 2008

.addPreferredGap(org.jdesktop.layout.LayoutStyle.UNRELATED)

.add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE).add(jLabel1).add(txtNama, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE,

org.jdesktop.layout.GroupLayout.DEFAULT_SIZE,org.jdesktop.layout.GroupLayout.PREFERRED_SIZE))

.addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)

.add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE).add(jLabel2).add(rdPerempuan).add(rdLaki))

.addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)

.add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING).add(jLabel3).add(jScrollPane1, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE,

59, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)).addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED).add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE)

.add(txtTempat, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE,org.jdesktop.layout.GroupLayout.DEFAULT_SIZE,org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)

.add(jLabel4)).addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED).add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)

.add(layout.createSequentialGroup()

.add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE).add(cmbTgl, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE,

org.jdesktop.layout.GroupLayout.DEFAULT_SIZE,org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)

.add(cmbBln, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE,org.jdesktop.layout.GroupLayout.DEFAULT_SIZE,org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)

.add(cmbThn, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE,org.jdesktop.layout.GroupLayout.DEFAULT_SIZE,org.jdesktop.layout.GroupLayout.PREFERRED_SIZE))

.add(18, 18, 18)

.add(btnTampil)).add(jLabel5))

.addContainerGap(21, Short.MAX_VALUE)));

pack();}// </editor-fold>String jenkel, tgl_lahir;

private void btnTampilActionPerformed(java.awt.event.ActionEvent evt) {

Page 10: Modul NetBeans

Workshop Labkom UBL 9-10 February 2008

// TODO add your handling code here:if(rdLaki.isSelected()) {

jenkel="Laki-Laki";}if(rdPerempuan.isSelected()) {

jenkel="Perempuan";}tgl_lahir=cmbTgl.getSelectedItem()+"-"

+cmbBln.getSelectedItem()+"-"+cmbThn.getSelectedItem();

JOptionPane.showMessageDialog(null, txtNim.getText()+"\n"+txtNama.getText()+"\n"+jenkel+"\n"+txtAlamat.getText()+"\n"+txtTempat.getText()+"\n"+tgl_lahir, "Data Mahasiswa",JOptionPane.PLAIN_MESSAGE);

}

/*** @param args the command line arguments*/

public static void main(String args[]) {java.awt.EventQueue.invokeLater(new Runnable() {

public void run() {new dataMhs().setVisible(true);

}});

}

// Variables declaration - do not modifyprivate javax.swing.JButton btnTampil;private javax.swing.JComboBox cmbBln;private javax.swing.JComboBox cmbTgl;private javax.swing.JComboBox cmbThn;private javax.swing.ButtonGroup grpJenkel;private javax.swing.JLabel jLabel1;private javax.swing.JLabel jLabel2;private javax.swing.JLabel jLabel3;private javax.swing.JLabel jLabel4;private javax.swing.JLabel jLabel5;private javax.swing.JScrollPane jScrollPane1;private javax.swing.JSpinner jSpinner1;private javax.swing.JLabel lblNim;private javax.swing.JLabel lblTest;private javax.swing.JRadioButton rdLaki;private javax.swing.JRadioButton rdPerempuan;

Page 11: Modul NetBeans

Workshop Labkom UBL 9-10 February 2008

private javax.swing.JTextArea txtAlamat;private javax.swing.JTextField txtNama;private javax.swing.JTextField txtNim;private javax.swing.JTextField txtTempat;// End of variables declaration

}

Page 12: Modul NetBeans

Workshop Labkom UBL 9-10 February 2008

Program sederhana menggunakan database

Berikut adalah contoh aplikasi sederhana seperti program sebelumnya, tetapimenggunakan database sebagai penyimpan data.

Source Code:

/** DataMahasiswa.java** Created on February 8, 2008, 11:22 PM*/

package workshop;

//import com.ibm.oti.connection.btgoep.Connection;//import com.mysql.jdbc.Statement;import java.sql.*;import javax.swing.*;

Page 13: Modul NetBeans

Workshop Labkom UBL 9-10 February 2008

/**** @author boedyst*/

public class DataMahasiswa extends javax.swing.JFrame {

/** Creates new form DataMahasiswa */public DataMahasiswa() {

initComponents();setLocation(250,100);grpJenkel.add(rdLaki);grpJenkel.add(rdPerempuan);

//tanggal Lahirfor(int i=1;i<=31;i++){

if(i<10)cmbTgl.addItem("0"+Integer.toString(i));else cmbTgl.addItem(Integer.toString(i));

}//bulan lahirfor(int i=1;i<=12;i++){

if(i<10)cmbBln.addItem("0"+Integer.toString(i));else cmbBln.addItem(Integer.toString(i));

}//tahun lahirfor(int i=1985;i<=2015;i++){cmbThn.addItem(Integer.toString(i));}

}

/** 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.*/

// <editor-fold defaultstate="collapsed" desc=" Generated Code ">private void initComponents() {

grpJenkel = new javax.swing.ButtonGroup();jLabel1 = new javax.swing.JLabel();txtNim = new javax.swing.JTextField();jLabel2 = new javax.swing.JLabel();jLabel3 = new javax.swing.JLabel();txtNama = new javax.swing.JTextField();jLabel5 = new javax.swing.JLabel();

Page 14: Modul NetBeans

Workshop Labkom UBL 9-10 February 2008

txtTempat = new javax.swing.JTextField();jLabel4 = new javax.swing.JLabel();rdLaki = new javax.swing.JRadioButton();rdPerempuan = new javax.swing.JRadioButton();jLabel6 = new javax.swing.JLabel();cmbTgl = new javax.swing.JComboBox();jLabel7 = new javax.swing.JLabel();txtAlamat = new javax.swing.JScrollPane();txtAlmt = new javax.swing.JTextArea();cmbBln = new javax.swing.JComboBox();cmbThn = new javax.swing.JComboBox();jPanel1 = new javax.swing.JPanel();btnExit = new javax.swing.JButton();btnEdit = new javax.swing.JButton();btnSave = new javax.swing.JButton();btnTampil = new javax.swing.JButton();btnDelete = new javax.swing.JButton();btnFind = new javax.swing.JButton();

setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);setTitle("Data Mahasiswa");setName("dataMhs"); // NOI18NsetResizable(false);

jLabel1.setFont(new java.awt.Font("Papyrus", 0, 12));jLabel1.setText("NIM");

txtNim.setFont(new java.awt.Font("Papyrus", 0, 12));txtNim.addActionListener(new java.awt.event.ActionListener() {

public void actionPerformed(java.awt.event.ActionEvent evt) {txtNimActionPerformed(evt);

}});

jLabel2.setFont(new java.awt.Font("Papyrus", 1, 12));jLabel2.setHorizontalAlignment(javax.swing.SwingConstants.CENTER);jLabel2.setText("BIODATA MAHASISWA");

jLabel3.setFont(new java.awt.Font("Papyrus", 0, 12));jLabel3.setText("Nama");

txtNama.setFont(new java.awt.Font("Papyrus", 0, 12));

jLabel5.setFont(new java.awt.Font("Papyrus", 0, 12));jLabel5.setText("Tempat Lahir");

Page 15: Modul NetBeans

Workshop Labkom UBL 9-10 February 2008

txtTempat.setFont(new java.awt.Font("Papyrus", 0, 12));

jLabel4.setFont(new java.awt.Font("Papyrus", 0, 12));jLabel4.setText("Jenis Kelamin");

rdLaki.setFont(new java.awt.Font("Papyrus", 0, 12));rdLaki.setText("Laki-Laki");rdLaki.setBorder(javax.swing.BorderFactory.createEmptyBorder(0, 0, 0, 0));rdLaki.setMargin(new java.awt.Insets(0, 0, 0, 0));

rdPerempuan.setFont(new java.awt.Font("Papyrus", 0, 12));rdPerempuan.setText("Perempuan");rdPerempuan.setBorder(javax.swing.BorderFactory.createEmptyBorder(0, 0, 0, 0));rdPerempuan.setMargin(new java.awt.Insets(0, 0, 0, 0));

jLabel6.setFont(new java.awt.Font("Papyrus", 0, 12));jLabel6.setText("Tanggal Lahir");

cmbTgl.setFont(new java.awt.Font("Papyrus", 0, 12));

jLabel7.setFont(new java.awt.Font("Papyrus", 0, 12));jLabel7.setText("Alamat");

txtAlmt.setColumns(20);txtAlmt.setFont(new java.awt.Font("Papyrus", 0, 12));txtAlmt.setRows(5);txtAlamat.setViewportView(txtAlmt);

cmbBln.setFont(new java.awt.Font("Papyrus", 0, 12));

cmbThn.setFont(new java.awt.Font("Papyrus", 0, 12));

jPanel1.setBorder(javax.swing.BorderFactory.createLineBorder(newjava.awt.Color(153, 153, 0)));

btnExit.setFont(new java.awt.Font("Papyrus", 0, 12));btnExit.setText("Exit");btnExit.setAlignmentX(200.0F);btnExit.setAlignmentY(100.0F);btnExit.addActionListener(new java.awt.event.ActionListener() {

public void actionPerformed(java.awt.event.ActionEvent evt) {btnExitActionPerformed(evt);

}});

btnEdit.setFont(new java.awt.Font("Papyrus", 0, 12));

Page 16: Modul NetBeans

Workshop Labkom UBL 9-10 February 2008

btnEdit.setText("Edit");btnEdit.addActionListener(new java.awt.event.ActionListener() {

public void actionPerformed(java.awt.event.ActionEvent evt) {btnEditActionPerformed(evt);

}});

btnSave.setFont(new java.awt.Font("Papyrus", 0, 12));btnSave.setText("Save");btnSave.addActionListener(new java.awt.event.ActionListener() {

public void actionPerformed(java.awt.event.ActionEvent evt) {btnSaveActionPerformed(evt);

}});

btnTampil.setFont(new java.awt.Font("Papyrus", 0, 12));btnTampil.setText("Tampil");btnTampil.addActionListener(new java.awt.event.ActionListener() {

public void actionPerformed(java.awt.event.ActionEvent evt) {btnTampilActionPerformed(evt);

}});

btnDelete.setFont(new java.awt.Font("Papyrus", 0, 12));btnDelete.setText("Delete");btnDelete.addActionListener(new java.awt.event.ActionListener() {

public void actionPerformed(java.awt.event.ActionEvent evt) {btnDeleteActionPerformed(evt);

}});

btnFind.setFont(new java.awt.Font("Papyrus", 0, 12));btnFind.setText("Find");btnFind.addActionListener(new java.awt.event.ActionListener() {

public void actionPerformed(java.awt.event.ActionEvent evt) {btnFindActionPerformed(evt);

}});

org.jdesktop.layout.GroupLayout jPanel1Layout = neworg.jdesktop.layout.GroupLayout(jPanel1);

jPanel1.setLayout(jPanel1Layout);jPanel1Layout.setHorizontalGroup(

jPanel1Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING).add(jPanel1Layout.createSequentialGroup()

.add(29, 29, 29)

Page 17: Modul NetBeans

Workshop Labkom UBL 9-10 February 2008

.add(jPanel1Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING,false)

.add(jPanel1Layout.createSequentialGroup().add(btnDelete).addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED).add(btnFind, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE,

org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)).add(jPanel1Layout.createSequentialGroup()

.add(btnTampil)

.addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)

.add(btnSave, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 72,org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)))

.addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)

.add(jPanel1Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING,false)

.add(btnExit, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE,org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)

.add(btnEdit, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 70,org.jdesktop.layout.GroupLayout.PREFERRED_SIZE))

.addContainerGap(38, Short.MAX_VALUE)));jPanel1Layout.setVerticalGroup(

jPanel1Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING).add(jPanel1Layout.createSequentialGroup()

.addContainerGap()

.add(jPanel1Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE).add(btnTampil).add(btnSave).add(btnEdit))

.addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)

.add(jPanel1Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE).add(btnDelete).add(btnFind).add(btnExit))

.addContainerGap(org.jdesktop.layout.GroupLayout.DEFAULT_SIZE,Short.MAX_VALUE))

);

org.jdesktop.layout.GroupLayout layout = neworg.jdesktop.layout.GroupLayout(getContentPane());

getContentPane().setLayout(layout);layout.setHorizontalGroup(

Page 18: Modul NetBeans

Workshop Labkom UBL 9-10 February 2008

layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING).add(layout.createSequentialGroup()

.add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING).add(layout.createSequentialGroup()

.add(45, 45, 45)

.add(jLabel2, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 324,org.jdesktop.layout.GroupLayout.PREFERRED_SIZE))

.add(layout.createSequentialGroup().add(71, 71, 71)

.add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.TRAILING, false).add(org.jdesktop.layout.GroupLayout.LEADING, jPanel1,

org.jdesktop.layout.GroupLayout.DEFAULT_SIZE,org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)

.add(org.jdesktop.layout.GroupLayout.LEADING,layout.createSequentialGroup()

.add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING).add(jLabel1).add(jLabel3).add(jLabel5).add(jLabel4).add(jLabel6).add(jLabel7))

.add(24, 24, 24)

.add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING, false).add(layout.createSequentialGroup()

.add(cmbTgl,org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 47,org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)

.addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)

.add(cmbBln,org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 41,org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)

.addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)

.add(cmbThn,org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 66,org.jdesktop.layout.GroupLayout.PREFERRED_SIZE))

.add(layout.createSequentialGroup().add(rdLaki).addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED).add(rdPerempuan))

.add(txtNim,org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 112,org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)

Page 19: Modul NetBeans

Workshop Labkom UBL 9-10 February 2008

.add(txtNama, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE,192, Short.MAX_VALUE)

.add(txtTempat)

.add(txtAlamat)))))).addContainerGap(64, Short.MAX_VALUE))

);layout.setVerticalGroup(

layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING).add(layout.createSequentialGroup()

.addContainerGap()

.add(jLabel2, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 43,org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)

.addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)

.add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE).add(jLabel1).add(txtNim, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE,

org.jdesktop.layout.GroupLayout.DEFAULT_SIZE,org.jdesktop.layout.GroupLayout.PREFERRED_SIZE))

.addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)

.add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE).add(jLabel3).add(txtNama, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE,

org.jdesktop.layout.GroupLayout.DEFAULT_SIZE,org.jdesktop.layout.GroupLayout.PREFERRED_SIZE))

.add(6, 6, 6)

.add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE).add(jLabel4).add(rdLaki).add(rdPerempuan))

.addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)

.add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING).add(jLabel5).add(txtTempat, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE,

org.jdesktop.layout.GroupLayout.DEFAULT_SIZE,org.jdesktop.layout.GroupLayout.PREFERRED_SIZE))

.addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)

.add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)

.add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE).add(cmbBln, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE,

org.jdesktop.layout.GroupLayout.DEFAULT_SIZE,org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)

.add(cmbThn, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE,org.jdesktop.layout.GroupLayout.DEFAULT_SIZE,org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)

Page 20: Modul NetBeans

Workshop Labkom UBL 9-10 February 2008

.add(cmbTgl, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE,org.jdesktop.layout.GroupLayout.DEFAULT_SIZE,org.jdesktop.layout.GroupLayout.PREFERRED_SIZE))

.add(jLabel6)).addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED).add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)

.add(txtAlamat, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 66,org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)

.add(jLabel7)).addPreferredGap(org.jdesktop.layout.LayoutStyle.UNRELATED).add(jPanel1, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE,

org.jdesktop.layout.GroupLayout.DEFAULT_SIZE,org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)

.addContainerGap(33, Short.MAX_VALUE)));

pack();}// </editor-fold>

private void txtNimActionPerformed(java.awt.event.ActionEvent evt) {// TODO add your handling code here:txtNama.requestFocus();find();

}

private void btnExitActionPerformed(java.awt.event.ActionEvent evt) {// TODO add your handling code here:System.exit(0);

}

private void btnDeleteActionPerformed(java.awt.event.ActionEvent evt) {// TODO add your handling code here:delete();bersih();

}

private void btnEditActionPerformed(java.awt.event.ActionEvent evt) {// TODO add your handling code here:edit();bersih();

}

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

find();

Page 21: Modul NetBeans

Workshop Labkom UBL 9-10 February 2008

}

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

tgl_lahir = cmbTgl.getSelectedItem() + "-" + cmbBln.getSelectedItem() + "-" +cmbThn.getSelectedItem() ;

if(rdLaki.isSelected()){jenkel="Laki-Laki";

}if(rdPerempuan.isSelected()){

jenkel="Perempuan";}JOptionPane.showMessageDialog(null,

txtNim.getText()+"\n"+txtNama.getText()+"\n"+jenkel+"\n"+txtTempat.getText()+"\n"+tgl_lahir+"\n"+txtAlmt.getText(),"Tampil",JOptionPane.PLAIN_MESSAGE);

}

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

save();bersih();

}String jenkel,tgl_lahir;void save(){

tgl_lahir = cmbThn.getSelectedItem() + "-"+ cmbBln.getSelectedItem() + "-"+ cmbTgl.getSelectedItem() ;

if(rdLaki.isSelected()){jenkel="Laki-Laki";

}if(rdPerempuan.isSelected()){

jenkel="Perempuan";}

try{/*String sqlSave = "INSERT INTO data_mhs VALUES ('"

+txtNim.getText()+"', '"+txtNama.getText()+"', '"+jenkel+"', '"

Page 22: Modul NetBeans

Workshop Labkom UBL 9-10 February 2008

+txtTempat.getText()+"', '"+tgl_lahir+"', '"+txtAlmt.getText()+"')";*/

String sqlSave = "INSERT INTO data_mhs VALUES ('"+txtNim.getText()+"', '"+txtNama.getText()+"', '"+jenkel+"', '"+txtTempat.getText()+"', '"+tgl_lahir+"', '"+txtAlmt.getText()+"')";

DBConnection hubung = new DBConnection();Connection con = hubung.open_a_Connection();Statement stm = con.createStatement();stm.executeUpdate(sqlSave);

JOptionPane.showMessageDialog(null,"Data berhasil disimpan!","SimpanData",JOptionPane.INFORMATION_MESSAGE);

}catch(Exception e){

JOptionPane.showMessageDialog(null,"Data gagal disimpan!"+e,"Simpan Data",JOptionPane.ERROR_MESSAGE);

}}

void edit(){tgl_lahir = cmbThn.getSelectedItem() + "-"

+ cmbBln.getSelectedItem() + "-"+ cmbTgl.getSelectedItem() ;

if(rdLaki.isSelected()){jenkel="Laki-Laki";

}if(rdPerempuan.isSelected()){

jenkel="Perempuan";}try{

DBConnection hubung = new DBConnection();Connection con = hubung.open_a_Connection();Statement stm = con.createStatement();String sqlEdit = "UPDATE data_mhs SET nama= '"

Page 23: Modul NetBeans

Workshop Labkom UBL 9-10 February 2008

+txtNama.getText()+"', jenkel= '"+jenkel+"', tmpt_lhr= '"+txtTempat.getText()+"', tgl_lhr= '"+tgl_lahir+"', alamat= '"+txtAlmt.getText()+"' WHERE nim='"+txtNim.getText()+"'";

stm.executeUpdate(sqlEdit);stm.close();con.close();

JOptionPane.showMessageDialog(null,"Data berhasil di ubah!","Ubah Data",JOptionPane.INFORMATION_MESSAGE);

}catch(Exception ex){JOptionPane.showMessageDialog(null,"Error 2"+ex);

}}

void delete(){try{

String sqlDelete = "DELETE FROM data_mhs WHEREnim='"+txtNim.getText()+"'";

DBConnection hubung = new DBConnection();Connection con = hubung.open_a_Connection();Statement stm = con.createStatement();stm.executeUpdate(sqlDelete);stm.close();con.close();

JOptionPane.showMessageDialog(null,"Data Telah Dihapus!","HapusData",JOptionPane.INFORMATION_MESSAGE);

}catch(Exception exc){JOptionPane.showMessageDialog(null,"Error 3"+exc);

}}

void find(){String sqlFind = "SELECT

nim,nama,jenkel,tmpt_lhr,DATE_FORMAT(tgl_lhr,'%d'),"+"DATE_FORMAT(tgl_lhr,'%m'),DATE_FORMAT(tgl_lhr,'%Y'),alamat "+"FROM data_mhs WHERE nim='"+txtNim.getText()+"'";

try{

DBConnection hubung = new DBConnection();Connection con = hubung.open_a_Connection();

Page 24: Modul NetBeans

Workshop Labkom UBL 9-10 February 2008

Statement stm = con.createStatement();ResultSet rs = stm.executeQuery(sqlFind);

if(rs.next()){//txtNim.setText(rs.getString("nim"));txtNama.setText(rs.getString("nama"));if(rs.getString(3).equals("Laki-Laki")){

rdLaki.setSelected(true);}else if(rs.getString(3).equals("Perempuan")){

rdPerempuan.setSelected(true);}txtTempat.setText(rs.getString("tmpt_lhr"));cmbTgl.setSelectedItem(rs.getString(5));cmbBln.setSelectedItem(rs.getString(6));cmbThn.setSelectedItem(rs.getString(7));txtAlmt.setText(rs.getString("alamat"));

}}catch(Exception e){

JOptionPane.showMessageDialog(null,"Error 1"+sqlFind);}

}

void bersih(){txtNim.setText("");txtNama.setText("");rdLaki.setSelected(false);rdPerempuan.setSelected(false);txtTempat.setText("");cmbTgl.setSelectedItem("01");cmbBln.setSelectedItem("01");cmbThn.setSelectedItem("1985");txtAlmt.setText("");txtNim.requestFocus();

}

/*** @param args the command line arguments*/

public static void main(String args[]) {java.awt.EventQueue.invokeLater(new Runnable() {

public void run() {new DataMahasiswa().setVisible(true);

}});

}

Page 25: Modul NetBeans

Workshop Labkom UBL 9-10 February 2008

// Variables declaration - do not modifyprivate javax.swing.JButton btnDelete;private javax.swing.JButton btnEdit;private javax.swing.JButton btnExit;private javax.swing.JButton btnFind;private javax.swing.JButton btnSave;private javax.swing.JButton btnTampil;private javax.swing.JComboBox cmbBln;private javax.swing.JComboBox cmbTgl;private javax.swing.JComboBox cmbThn;private javax.swing.ButtonGroup grpJenkel;private javax.swing.JLabel jLabel1;private javax.swing.JLabel jLabel2;private javax.swing.JLabel jLabel3;private javax.swing.JLabel jLabel4;private javax.swing.JLabel jLabel5;private javax.swing.JLabel jLabel6;private javax.swing.JLabel jLabel7;private javax.swing.JPanel jPanel1;private javax.swing.JRadioButton rdLaki;private javax.swing.JRadioButton rdPerempuan;private javax.swing.JScrollPane txtAlamat;private javax.swing.JTextArea txtAlmt;private javax.swing.JTextField txtNama;private javax.swing.JTextField txtNim;private javax.swing.JTextField txtTempat;// End of variables declaration

}

Contoh program dapat anda dapatkan di asisten labkom, silihkan hubungi asistenyang ada atau ke ruang asisten.