HARIS ELFIAN 16076034 - Laporan Jobsheet 14.
HARIS ELFIAN 16076034 - Laporan Jobsheet 14.
JOBSHEET 14
PRAKTIKUM PEMOGRAMMAN VISUAL
HARIS ELFIAN
16076034
Laporan Jobsheet 14
Pemogramman Visual
A. Buka aplikasi NetBeans IDE, dalam pratikum ini kita menggunakan versi
8.2
B. Setelah loading selesai, maka akan tampil halaman awal aplikasi NetBeans
IDE seperti ini.
C. Lalu buat project baru dengan memilih menu New Project pada menu bar
File, dan beri nama pada project tersebut.
D. Selanjutnya adalah mengerjakan Latihan dan Tugas yang ada didalam
jobsheet 14.
1. Latihan 1
a. Buat file Latihan 1 dengan memilih new file Jframe From.. seperti
gambar dibawah ini
b. Beri nama pada file tugas Latihan 1.
c. Setelah file Latihan 1 dibuat, buat juga tabel pada database untuk
Latihan 1 ini, bisa pada database baru maupun pada database yg
sudah ada, disini saya memberi nama tabel yaitu tabel job14a
dengan format seperti ini.
d. Lalu membuat desain Latihan 1 pada aplikasi NetBeans seperti
berikut.
/**
*
* @author ALI
*/
public class Latihan01 extends javax.swing.JFrame {
Connection konek;
String no, nama, posisi;
try {
String sql1="Select * from job14a";
Statement stt = konek.createStatement();
ResultSet res = stt.executeQuery(sql1);
while (res.next()) {
tabel.addRow(new Object[]{res.getString("no"),
res.getString("nama"), res.getString("posisi")});
jTable1.setModel(tabel);
}
} catch (Exception e) {
}
}
/**
* Creates new form Latihan01
*/
public Latihan01() throws ClassNotFoundException {
initComponents();
koneksi();
tampildata();
}
/**
* 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() {
setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_O
N_CLOSE);
jComboBox1.setModel(new
javax.swing.DefaultComboBoxModel<>(new String[] { "Keeper",
"Gelandang Depan", "Gelandang Belakang" }));
jTable1.setModel(new javax.swing.table.DefaultTableModel(
new Object [][] {
{null, null, null},
{null, null, null},
{null, null, null},
{null, null, null}
},
new String [] {
"No Punggung", "Nama Pemain", "Posisi"
}
));
jTable1.addMouseListener(new java.awt.event.MouseAdapter()
{
public void mouseClicked(java.awt.event.MouseEvent evt)
{
jTable1MouseClicked(evt);
}
});
jScrollPane3.setViewportView(jTable1);
javax.swing.GroupLayout layout = new
javax.swing.GroupLayout(getContentPane());
getContentPane().setLayout(layout);
layout.setHorizontalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alig
nment.LEADING)
.addGroup(layout.createSequentialGroup()
.addGroup(layout.createParallelGroup(javax.swing.Gr
oupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addGap(170, 170, 170)
.addComponent(jLabel5))
.addGroup(layout.createSequentialGroup()
.addGap(60, 60, 60)
.addComponent(jLabel1,
javax.swing.GroupLayout.PREFERRED_SIZE, 134,
javax.swing.GroupLayout.PREFERRED_SIZE)
.addGap(6, 6, 6)
.addComponent(jTextField1,
javax.swing.GroupLayout.PREFERRED_SIZE, 148,
javax.swing.GroupLayout.PREFERRED_SIZE)
.addGap(32, 32, 32)
.addComponent(jButton1,
javax.swing.GroupLayout.PREFERRED_SIZE, 87,
javax.swing.GroupLayout.PREFERRED_SIZE))
.addGroup(layout.createSequentialGroup()
.addGap(60, 60, 60)
.addComponent(jLabel2,
javax.swing.GroupLayout.PREFERRED_SIZE, 134,
javax.swing.GroupLayout.PREFERRED_SIZE)
.addGap(6, 6, 6)
.addComponent(jTextField2,
javax.swing.GroupLayout.PREFERRED_SIZE, 148,
javax.swing.GroupLayout.PREFERRED_SIZE)
.addGap(32, 32, 32)
.addComponent(jButton2,
javax.swing.GroupLayout.PREFERRED_SIZE, 87,
javax.swing.GroupLayout.PREFERRED_SIZE))
.addGroup(layout.createSequentialGroup()
.addGap(60, 60, 60)
.addComponent(jLabel3,
javax.swing.GroupLayout.PREFERRED_SIZE, 134,
javax.swing.GroupLayout.PREFERRED_SIZE)
.addGap(6, 6, 6)
.addComponent(jComboBox1,
javax.swing.GroupLayout.PREFERRED_SIZE, 148,
javax.swing.GroupLayout.PREFERRED_SIZE)
.addGap(32, 32, 32)
.addComponent(jButton3,
javax.swing.GroupLayout.PREFERRED_SIZE, 87,
javax.swing.GroupLayout.PREFERRED_SIZE))
.addGroup(layout.createSequentialGroup()
.addGap(380, 380, 380)
.addComponent(jButton4,
javax.swing.GroupLayout.PREFERRED_SIZE, 87,
javax.swing.GroupLayout.PREFERRED_SIZE))
.addGroup(layout.createSequentialGroup()
.addGap(60, 60, 60)
.addComponent(jLabel4,
javax.swing.GroupLayout.PREFERRED_SIZE, 134,
javax.swing.GroupLayout.PREFERRED_SIZE)
.addGap(6, 6, 6)
.addComponent(jTextField3,
javax.swing.GroupLayout.PREFERRED_SIZE, 148,
javax.swing.GroupLayout.PREFERRED_SIZE)
.addGap(32, 32, 32)
.addComponent(jButton7,
javax.swing.GroupLayout.PREFERRED_SIZE, 87,
javax.swing.GroupLayout.PREFERRED_SIZE))
.addGroup(layout.createSequentialGroup()
.addGap(200, 200, 200)
.addComponent(jButton5,
javax.swing.GroupLayout.PREFERRED_SIZE, 99,
javax.swing.GroupLayout.PREFERRED_SIZE))
.addGroup(layout.createSequentialGroup()
.addGap(37, 37, 37)
.addComponent(jButton6,
javax.swing.GroupLayout.PREFERRED_SIZE, 134,
javax.swing.GroupLayout.PREFERRED_SIZE))
.addGroup(layout.createSequentialGroup()
.addGap(37, 37, 37)
.addComponent(jScrollPane3,
javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE)))
.addContainerGap(30, Short.MAX_VALUE))
);
layout.setVerticalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alig
nment.LEADING)
.addGroup(layout.createSequentialGroup()
.addGap(20, 20, 20)
.addComponent(jLabel5)
.addGap(36, 36, 36)
.addGroup(layout.createParallelGroup(javax.swing.Gr
oupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addGap(10, 10, 10)
.addComponent(jLabel1))
.addComponent(jTextField1,
javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(jButton1))
.addGap(16, 16, 16)
.addGroup(layout.createParallelGroup(javax.swing.Gr
oupLayout.Alignment.LEADING)
.addComponent(jLabel2)
.addComponent(jTextField2,
javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(jButton2))
.addGap(7, 7, 7)
.addGroup(layout.createParallelGroup(javax.swing.Gr
oupLayout.Alignment.LEADING)
.addComponent(jLabel3)
.addComponent(jComboBox1,
javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(jButton3))
.addGap(7, 7, 7)
.addComponent(jButton4)
.addGap(17, 17, 17)
.addGroup(layout.createParallelGroup(javax.swing.Gr
oupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addGap(20, 20, 20)
.addComponent(jLabel4))
.addGroup(layout.createSequentialGroup()
.addGap(10, 10, 10)
.addComponent(jTextField3,
javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE))
.addComponent(jButton7,
javax.swing.GroupLayout.PREFERRED_SIZE, 36,
javax.swing.GroupLayout.PREFERRED_SIZE))
.addGap(14, 14, 14)
.addComponent(jButton5)
.addGap(8, 8, 8)
.addComponent(jButton6)
.addGap(6, 6, 6)
.addComponent(jScrollPane3,
javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE))
);
pack();
}// </editor-fold>
/**
* @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.getCl
assName());
break;
}
}
} catch (ClassNotFoundException ex) {
java.util.logging.Logger.getLogger(Latihan01.class.getN
ame()).log(java.util.logging.Level.SEVERE, null, ex);
} catch (InstantiationException ex) {
java.util.logging.Logger.getLogger(Latihan01.class.getN
ame()).log(java.util.logging.Level.SEVERE, null, ex);
} catch (IllegalAccessException ex) {
java.util.logging.Logger.getLogger(Latihan01.class.getN
ame()).log(java.util.logging.Level.SEVERE, null, ex);
} catch (javax.swing.UnsupportedLookAndFeelException ex) {
java.util.logging.Logger.getLogger(Latihan01.class.getN
ame()).log(java.util.logging.Level.SEVERE, null, ex);
}
//</editor-fold>
/**
*
* @author ALI
*/
public class Tugas01 extends javax.swing.JFrame {
Connection konek;
String kode,tgl,jenis,type,sewa,lama,jumlah;
/**
* Creates new form Tugas01
*/
public Tugas01() throws ClassNotFoundException {
initComponents();
koneksi();
tampildata();
jRadioButton1.setActionCommand("Member");
jRadioButton2.setActionCommand("Umum");
}
/**
* 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() {
setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_O
N_CLOSE);
getContentPane().setLayout(new
org.netbeans.lib.awtextra.AbsoluteLayout());
jRadioButton1.setText("UMUM");
getContentPane().add(jRadioButton1, new
org.netbeans.lib.awtextra.AbsoluteConstraints(350, 130, 73, -1));
jRadioButton2.setText("MEMBER");
getContentPane().add(jRadioButton2, new
org.netbeans.lib.awtextra.AbsoluteConstraints(440, 130, 96, -1));
jComboBox1.setModel(new
javax.swing.DefaultComboBoxModel<>(new String[] { "Indoor 1",
"Indoor 2", "Indoor 3", "Indoor 4" }));
getContentPane().add(jComboBox1, new
org.netbeans.lib.awtextra.AbsoluteConstraints(350, 160, 187, -1));
getContentPane().add(jTextField2, new
org.netbeans.lib.awtextra.AbsoluteConstraints(350, 190, 187, -1));
jTextField3.addKeyListener(new java.awt.event.KeyAdapter()
{
public void keyReleased(java.awt.event.KeyEvent evt) {
jTextField3KeyReleased(evt);
}
});
getContentPane().add(jTextField3, new
org.netbeans.lib.awtextra.AbsoluteConstraints(350, 220, 187, -1));
getContentPane().add(jTextField4, new
org.netbeans.lib.awtextra.AbsoluteConstraints(350, 250, 187, -1));
getContentPane().add(jDateChooser1, new
org.netbeans.lib.awtextra.AbsoluteConstraints(350, 100, 187, -1));
jTable1.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}
},
new String [] {
"Kode", "Tanggal", "Jenis Pelanggan", "Type
Pelanggan", "Sewa / Jam", "Lama Sewa", "Jumlah Bayar"
}
));
jTable1.addMouseListener(new java.awt.event.MouseAdapter()
{
public void mouseClicked(java.awt.event.MouseEvent evt)
{
jTable1MouseClicked(evt);
}
});
jScrollPane1.setViewportView(jTable1);
getContentPane().add(jScrollPane1, new
org.netbeans.lib.awtextra.AbsoluteConstraints(40, 387, 680, 430));
pack();
}// </editor-fold>
kode = jTextField1.getText();
sewa = jTextField2.getText();
lama = jTextField3.getText();
jumlah = jTextField4.getText();
if (kode.equals("") | (sewa.equals(""))) {
JOptionPane.showMessageDialog(null,"Pengisian Data
Tidak Boleh Kosong");
jTextField1.requestFocus();
}else{
try {
String sql = "Insert Into tugas14a
values(?,?,?,?,?,?,?)";
PreparedStatement stat =
konek.prepareStatement(sql);
String tampilan = "yyyy-MM-dd";
SimpleDateFormat format = new
SimpleDateFormat(tampilan);
tgl =
String.valueOf(format.format(jDateChooser1.getDate()));
type =
String.valueOf(jComboBox1.getSelectedItem());
try {
stat.setString(1,
jTextField1.getText().toString());
stat.setString(2, tgl);
if(jRadioButton1.isSelected())
{gender ="Member";}
else
{gender ="Umum";}
stat.setString(3, gender);
stat.setString(4,String.valueOf(jComboBox1.getSelec
tedItem()));
stat.setString(5,
jTextField2.getText().toString());
stat.setString(6,
jTextField3.getText().toString());
stat.setString(7,
jTextField4.getText().toString());
stat.executeUpdate();
JOptionPane.showMessageDialog(null,"Data
Tersimpan.....");
reset();
} catch (SQLException se){
System.out.println("Gagal Menyimpan.." + se);
JOptionPane.showMessageDialog(null,"Yang Anda
Masukkan Telah Ada..\nGagal Disimpan..Coba Lagi \npesan Error :\n"
+ se);
jTextField1.requestFocus();
}
} catch (Exception e) {
JOptionPane.showMessageDialog(null,"maaf" + e );
}
}
}
/**
* @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.getCl
assName());
break;
}
}
} catch (ClassNotFoundException ex) {
java.util.logging.Logger.getLogger(Tugas01.class.getNam
e()).log(java.util.logging.Level.SEVERE, null, ex);
} catch (InstantiationException ex) {
java.util.logging.Logger.getLogger(Tugas01.class.getNam
e()).log(java.util.logging.Level.SEVERE, null, ex);
} catch (IllegalAccessException ex) {
java.util.logging.Logger.getLogger(Tugas01.class.getNam
e()).log(java.util.logging.Level.SEVERE, null, ex);
} catch (javax.swing.UnsupportedLookAndFeelException ex) {
java.util.logging.Logger.getLogger(Tugas01.class.getNam
e()).log(java.util.logging.Level.SEVERE, null, ex);
}
//</editor-fold>
/**
*
* @author ALI
*/
public class Tugas02 extends javax.swing.JFrame {
Connection konek;
String nim, nama, prodi, jurusan, jenis_kelamin;
try {
String sql1="Select * from tugas14b";
Statement stt = konek.createStatement();
ResultSet res = stt.executeQuery(sql1);
while (res.next()) {
tabel.addRow(new Object[]{res.getString("NIM"),
res.getString("nama"), res.getString("prodi"),
res.getString("jurusan"), res.getString("jenis_kelamin")});
jTable1.setModel(tabel);
}
} catch (Exception e) {
}
}
/**
* Creates new form Tugas01
*/
public Tugas02() throws ClassNotFoundException {
initComponents();
koneksi();
tampildata();
}
/**
* 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() {
setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_O
N_CLOSE);
jComboBox1.setModel(new
javax.swing.DefaultComboBoxModel<>(new String[] { "S1 Pddk Teknik
Informatika", "S1 Pddk Teknik Elektronika", "D3 Elektronika" }));
jComboBox2.setModel(new
javax.swing.DefaultComboBoxModel<>(new String[] { "Teknik
Elektronika" }));
jRadioButton1.setText("Laki-laki");
jRadioButton2.setText("Perempuan");
jTable1.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}
},
new String [] {
"NIM", "Nama", "Prodi", "Jurusan", "Jenis Kelamin"
}
));
jScrollPane1.setViewportView(jTable1);
pack();
}// </editor-fold>
if (nim.equals("") | (nama.equals(""))){
JOptionPane.showMessageDialog(null,"Pengisian Data
Tidak Boleh Kosong");
jTextField1.requestFocus();
}else{
try {
String sql = "Insert Into tugas14b
values(?,?,?,?,?)";
PreparedStatement stat =
konek.prepareStatement(sql);
try {
stat.setString(1, jTextField1.getText());
stat.setString(2, jTextField2.getText());
stat.setString(3,String.valueOf(jComboBox1.getS
electedItem()));
stat.setString(4,
String.valueOf(jComboBox2.getSelectedItem()));
if(jRadioButton1.isSelected())
{jenis_kelamin ="Laki-laki";}
else
{jenis_kelamin ="Perempuan";}
stat.setString(5, jenis_kelamin);
stat.executeUpdate();
JOptionPane.showMessageDialog(null,"Data
Tersimpan.....");
reset();
} catch (SQLException se) {
System.out.println("Gagal Menyimpan.." + se);
JOptionPane.showMessageDialog(null,"Yang Anda
Masukkan Telah Ada..\nGagal Disimpan..Coba Lagi \npesan Error :\n"
+ se);
jTextField1.requestFocus();
}
} catch (Exception se) {
}
}
}
/**
* @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.getCl
assName());
break;
}
}
} catch (ClassNotFoundException ex) {
java.util.logging.Logger.getLogger(Tugas02.class.getNam
e()).log(java.util.logging.Level.SEVERE, null, ex);
} catch (InstantiationException ex) {
java.util.logging.Logger.getLogger(Tugas02.class.getNam
e()).log(java.util.logging.Level.SEVERE, null, ex);
} catch (IllegalAccessException ex) {
java.util.logging.Logger.getLogger(Tugas02.class.getNam
e()).log(java.util.logging.Level.SEVERE, null, ex);
} catch (javax.swing.UnsupportedLookAndFeelException ex) {
java.util.logging.Logger.getLogger(Tugas02.class.getNam
e()).log(java.util.logging.Level.SEVERE, null, ex);
}
//</editor-fold>
//</editor-fold>