Electricity Lightning

Pages

Banner 468 x 60px

Agung Trianggoro - 20180910015 - Sistem Informasi 2018 A - Fakultas Komputer - Universitas Kuningan
 

Senin, 23 Desember 2019

Laporan Praktikum MODUL 8: GRAPHICAL USER INTERFACE (2)

0 komentar
LAPORAN PRAKTIKUM
 BAHASA PEMROGRAMAN 1
MODUL 8: GRAPHICAL USER INTERFACE (2)


Dosen:
Dede Irawan, M.Kom.





Disusun Oleh:
AGUNG TRIANGGORO
20180910015
Sistem Informasi-A 2018




FAKULTAS ILMU KOMPUTER
UNIVERSITAS KUNINGAN
TAHUN 2018





KATA PENGANTAR
Dengan mengucapkan puji dan syukur kepada Allah SWT atas berkat rahmat dan karuniaNya yang diberikan kepada kita semua sebagai umatnya. Saya dapat menyusun makalah dengan judul “Sejarah Java” untuk memenuhi tugas mata kuliah Bahasa Pemrograman 1.
Makalah yang disusun untuk mempelajari lebih detail mengenai Sejarah java. Saya berharap informasi yang saya dapatkan tidak hanya untuk saya sendiri melainkan untuk para pembaca sebagai ilmu untuk menambah wawasan .
Dalam kesempatan ini saya mengucapkan terima kasih ,semoga makalah ini dapat memberikan kontribusi positif dan memberikan manfaat dalam hidup kita nantinya .Dari lubuk hati yang paling dalam, sangat disadari bahwa ,makalah yang saya buat masih jauh dari sempurna. Oleh sebab itulah tidak ada salahnya saya mengharapkan berbagai kritik dan saran yang membangun untuk lebih baik kedepannya.
Kuningan, Desember 2019


Penulis


DAFTAR ISI
KATA PENGANTAR
DAFTAR ISI

BAB I
PENDAHULUAN
1.1  LATAR BELAKANG
            1.2  RUMUSAN MASALAH
1.3  TUJUAN PENULISAN
BAB III
PEMBAHASAN
3.1  Komponen penyusun Java GUI
3.2  Fungsi GUI
3.3  Macam – macam GUI
          3.4  Kelebihan dan Kekurangan GUI
3.5  PRE TEST
3.6  PRAKTIKUM
3.7  POST TEST 
BAB I
PENDAHULUAN
1.1  LATAR BELAKANG
GUI atau kepajangan dari Graphical User Interface merupakan salah satu model interaksi antara manusia dan komputer. Selain GUI, ada juga model yang lain seperti Character User Interface (CUI) yang sering kita kenal dengan command line. Dari sisi kenyamanan (attitude), kedua model ini memiliki fungsinya masing-masing. Fungsi CUI biasanya adalah administrator sistem berbasis sistem operasi LINUX. Bagi mereka, CUI dirasakan lebih nyaman dibandingkan dengan GUI, bahkan setelah GUI pada LINUX berkembang dengan pesat, mereka tetap bertahan untuk menggunakan CUI. Pengguna GUI biasanya adalah mereka yang sudah terbiasa dengan sistem operasi Windows. Graphical Unit Interface, merupakan perangkat pertama untuk mengendalikan fungsi-fungsi suatu software, dan membuat pengguna mudah untuk memahami bagaimana menggunakan software tersebut. Kita dapat mengasumsikan bahwa GUI merupakan sebagai bagian dari suatu software yang pertama kali ditangkap mata (secara interface). Dimana suatu software akan kelihatan bagus, jika GUI tersebut tampak menarik. Java GUI sendiri secara umum sama dengan pemahaman GUI sendiri, namun disini GUI pada java adalah salah satu dari fasilitas Java dalam mengembangkan suatu aplikasi dengan memberikan suatu interface yang nantinya akan disesuaikan dengan kebutuhan suatu aplikasi, baik skala kecil dan besar. Intinya, GUI pada Java adalah komponen-komponen penyempurna dalam sebuah sistem, seperti komponen navigasi, graphic, interface desktop, komponen menu, sinkronisasi antar interface dan semuanya itu dirancang dengan penelitian yang baik, dimana nantinya aplikasi tersebut dapat dengan mudah dioperasikan user.
1.2  RUMUSAN MASALAH
1.      Apa komponen java GUI ?
2.      Apa fungsi GUI ?
3.      Apa saja dan berapa banyak macam dari java GUI ?
4.      Apa kelebihan dan kukurangan GUI ?
1.3  TUJUAN PENULISAN
1.      Untuk lebih memahami Java GUI
2.      Untuk mengetahui apa saja komonen – komponen penyusun java GUI
3.      Untuk mengetahui fungsi dari GUI
4.      Untuk mengetahui jumlah dan macam-macam java GUI
5.      Untuk mengetahui apa saja kelebihan dan kekurangan dari GUI
 


BAB III
PEMBAHASAN
3.1 Komponen penyusun Java GUI
Komponen Utama GUI java adalah JFC (Java Fundamental Class)
  1. Koordinat GUI
  2. AWT (Abstract Windows Toolkit) merupakan paket dasar dalam pembentukan GUI dengan menggunakan platform yang terdapat dalam masing-masing OS (native resource) Paket dasar : java.awt.component
  3. Swing Product SUN dalam membangun GUI yang Independent sehingga bersifat cross platform dalam tampilan window yang dihasilkan. Paket dasar: javax.swing.Jcomponent
  4. Event Handler Aksi-reaksi yang diberikan pada tiap-tiap komponen GUI
3.2 Fungsi GUI
Dari pemahaman tentang GUI sebelumnya, fungsi-fungsi GUI dalam dunia teknologi dan informasi saat ini sangat beragam. Berikut beberapa fungsi dari penggunaan GUI dalam dunia Iptek khususnya komputer :
1.      Pointing device dengan perangkat berupa mouse
2.      Memiliki fungsi sebagai plug and play, yang mana memudahkan user dalam menginstall dan uninstall hardware/sofware (sinkronisasi)
3.      Membuat software-software yang menuntut aplikasi dalam komputer user yang dapat digunakan untuk kegiatan user dalam proses seperti menulis text, spreadsheet. sound, graphic dan lain-lain
4.      Untuk digunakan dalam pembuatan System Operasi sebagai User friendly dan ergonomis
5.      Pembuatan website
6.      Opensource software/hardware atau pengembang aplikasi-aplikasi skala besar lainnya.
3.3 Macam – macam GUI
Berikut ini adalah beberapa macam contoh GUI pada Java.
1.      AWT (Abstract Window Toolkit) – SUN Microsystem → Oracle Product
AWT (Abstract Window Toolkit) ini adalah GUI Toolkit pertama pada bahasa pemrograman Java, sayang-nya AWT ini sangat-sangat kekurangan komponen yang biasa digunakan untuk membangun sebuah aplikasi desktop secara lengkap (komponen tabel saja tidak ada ). Terlepas dari kurang-nya komponen GUI yang terdapat pada AWT (Abstract Window Toolkit), aplikasi yang dibangun menggunakan AWT (Abstract Window Toolkit) akan tampak seperti aplikasi native. Maksudnya yaitu, jika aplikasi yang dibangun menggunakan AWT (Abstract Window Toolkit) ini dijalankan pada Sistem Operasi Windows. Maka aplikasi ini akan terlihat seperti aplikasi Windows pada umum-nya, dan begitu juga jika dijalankan pada Sistem Operasi Mac ataupun GNU/Linux. Kenapa ini bisa terjadi, karena AWT (Abstract Window Toolkit) ini benar-benar memanggil native subrutin untuk menggambar setiap komponen-nya ke layar.
2.      Java Swing – SUN Microsystem → Oracle
GUI Toolkit yang mungkin paling banyak dikenal oleh teman-teman yang baru belajar Pemrograman GUI di Java dibandingkan dengan GUI Toolkit yang lain GUI Toolkit ini lebih banyak dikenal dikarenakan dukungan tutorialnya yang cukup banyak bertebaran di Internet, dan juga merupakan standart dari Java yang mana kita tidak perlu melakukan penambahan library lagi kalau ingin menggunakan GUI Toolkit ini. Selain itu, terdapat 2 IDE besar yang menggunakan GUI Toolkit Java Swing yaitu NetBeans IDE(OpenSource) dan IntelliJ IDEA (mempunyai versi OpenSource dan Komersial).
Dibandingkan dengan pendahulu-nya yaitu AWT (Abstract Window Toolkit), Swing mempunyai lebih banyak komponen pendukung untuk membangun sebuah aplikasi yang lengkap untuk keperluan desktop. Selain didukung dengan banyak-nya komponen, Swing ini benar-benar murni 100 % ditulis dengan bahasa pemrograman Java tanpa adanya sebuah wrapper untuk memanggil rutin-rutin native code via JNI (Java Native Interface). Seluruh komponen yang terdapat pada Swing, semuanya murni digambar sendiri menggunakan API (Application Programming Interface) 2D untuk memanggil rutin-rutin dasar penggambaran komponen-nya. Nah dengan model seperti ini, memungkinkan sekali aplikasi yang dibangun menggunakan Swing tampak sama persis di berbagai macam Sistem Operasi.
Selain itu, Swing juga mempunyai kemampuan untuk berganti-ganti tampilan menggunakan LAF (Look And Feel) atau themes Sayang-nya, jika kita menginginkan tampilan GUI yangnative(tampilan-nya sama seperti aplikasi-aplikasi lain pada sistem operasi target) Swing seperti-nya masih terasa kurang smoothterutama dukungan pada font rendering-nya . Untuk teman-teman yang penasaran bagaimana sih sebenarnya tampilan dari GUI Toolkit Swing ini ? Dibawah ini adalah screenshot Swing standart yang bisa kita gunakan tanpa perlu menambahkan library lagi
3.      SWT (Standart Widget Tookit) – IBM Product → Eclipse Foundation
SWT (Standart Widget Toolkit) ini adalah sebuah GUI Toolkit yang dikeluaran oleh IBM sebagai alternatif dari AWT/Java Swing milik SUN Microsystem, yang membedakan antara SWT (Standart Widget Toolkit) dan AWT/Java Swing adalah SWT ini benar-benar mengakses native GUI library yang terdapat pada Sistem Operasi melalui JNI (Java Native Interface). Dengan model seperti ini, memungkinkan tampilan aplikasi yang dibangun menggunakan GUI Toolkit SWT menjadi sama persis dengan aplikasi native lain-nya. Kekurangan dari model pemanggilan native GUI library seperti ini adalah kita harus menyediakan library untuk tiap-tiap Sistem Operasi target aplikasi kita.
4.      QtJambi – Trolltech → Nokia Product → Stopped and Taken By Community
Pernah menggunakan Desktop Environment KDE ? Ingin membuat aplikasi yang tampilan-nya mirip denganKDE ?Kalau teman-teman ingin membangun aplikasi yang tampilan-nya tampak seperti aplikasi yang terdapat pada KDE tapi masih ingin menggunakan bahasa java sebagai dasar-nya, maka QtJambi adalah pilihan yang tepat untuk teman-teman. Karena QtJambi ini merupakan binding Qt Framework dengan bahasa Java, tetapi sayang-nya proyek QtJambi sudah tidak disupport oleh Nokia dan secara resmi telah ditutup Untung-nya, awal tahun ini ada beberapa developer yang peduli dengan kelangsungan proyek ini dan akhir-nya membuat sebuah komunitas untuk melanjutkan pengembangan proyek QtJambi, sekarang teman-teman bisa melihat perkembangan proyek QtJambi ini pada halaman QtJambi Community
5.      avaGNOME – Community Product
Kalau QtJambi diatas ditujukan untuk teman-teman yang sudah akrab dengan API (Application Programming Interface) Qt Framework, berbeda dengan JavaGNOME Proyek ini lebih dikhususkan untuk teman-teman pecinta GTK atau yang paling banyak dikenal yaitu GNOMESama seperti GUI Toolkit SWT dan QTJambi, JavaGNOME ini juga mengakses native library tetapi API yang digunakan adalah API dari GTK. Untuk teman-teman yang sudah terbiasa membangun aplikasi menggunakan Glade, maka teman-teman bisa men-design form-nya menggunakan Glade dan memanggil-nya menggunakan bahasa java melalui JavaGNOME.
3.4 Kelebihan dan Kekurangan GUI
        Kelebihan GUI :
1.      Desain Grafis lebih menarik.
2.      GUI memungkinkan user untuk berinteraksi dengan komputer secara lebih baik.
3.      Memudahkan pengguna.
4.      Menarik minat pengguna.
5.      Resolusi gambar yang tinggi.
      
           Kekurangan GUI :
1.      Memakan memory yang sangat besar.
2.      Bergantung pada perangkat keras.
3.      Membutuhkan banyak tempat pada layar komputer.
4.      Tidak fleksibel.


3.5  PRE TEST
1. Buat aplikasi java GUI untuk menghitung gaji karyawan dengan jumlah karyawan ditentukan oleh inputan dari keyboard. Adapun data karyawan terdiri dari NIK, Nama, Lama Kerja, Gaji Pokok, Tunjangan, potongan dan gaji bersih. Besar gaji pokok diisi dengan 1000000*lama kerja, tunjangan gajipokok*2.5% dan gaji bersih diisi dengan gaji pokok + tunjangan.


Code Program:
package jframegaji;
import javax.swing.*;
import java.awt.event.*;


public class Jframegaji extends JFrame implements ActionListener{
JLabel label1 = new JLabel();
JLabel label2 = new JLabel();
JLabel label3 = new JLabel();
JLabel label4 = new JLabel();
JLabel label5 = new JLabel();
JLabel label6 = new JLabel();
JLabel label7 = new JLabel();
JLabel label8 = new JLabel();
JLabel label9 = new JLabel();
JLabel label10 = new JLabel();

JTextField text1 = new JTextField();
JTextField text2 = new JTextField();
JTextField text3 = new JTextField();
JTextField text4 = new JTextField();
JTextField text5 = new JTextField();
JTextField text6 = new JTextField();
JTextField text7 = new JTextField();
JTextField text8 = new JTextField();
JTextField text9 = new JTextField();
JTextField text10 = new JTextField();



JButton button1 = new JButton();
JButton button2 = new JButton();
JButton button3 = new JButton();
JButton button4 = new JButton();



public void ciptakanJFrame(){
setLayout(null);
setTitle("Program Gaji Karyawan - Agung Trianggoro");
setVisible(true);
setSize(400, 500);

setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setResizable(false);
setLocationRelativeTo(null);
    }

public void ciptakanJLabel(){
label1.setText("Nama Karyawan:");
label1.setBounds(10,10,250,20);
add(label1);

label2.setText("NIK:");
label2.setBounds(10,50,250,20);
add(label2);

label3.setText("Lama kerja (Tahun) :");
label3.setBounds(10,90,250,20);
add(label3);

label4.setText("Jumlah Istri:");
label4.setBounds(10,130,250,20);
add(label4);

label5.setText("Jumlah Anak:");
label5.setBounds(10,170,250,20);
add(label5);

label6.setText("Gaji Pokok:");
label6.setBounds(10,250,250,20);
add(label6);

label7.setText("Kenaikan:");
label7.setBounds(10,280,250,20);
add(label7);

label8.setText("Tunjangan Istri:");
label8.setBounds(10,310,250,20);
add(label8);

label9.setText("Tunjangan Anak:");
label9.setBounds(10,340,250,20);
add(label9);

label10.setText("Total Gaji:");
label10.setBounds(10,370,250,20);
add(label10);


    }

public void ciptakanJTextField(){
   
text1.setBounds(180,10,160,20);
add(text1);

text2.setBounds(180,50,160,20);
add(text2);

text3.setBounds(180,90,160,20);
add(text3);

text4.setBounds(180,130,160,20);
add(text4);

text5.setBounds(180,170,160,20);
add(text5);

text6.setBounds(180,250,160,20);
add(text6);

text7.setBounds(180,280,160,20);
add(text7);

text8.setBounds(180,310,160,20);
add(text8);

text9.setBounds(180,340,160,20);
add(text9);

text10.setBounds(180,370,160,20);
add(text10);


    }

public void ciptakanJButton(){

button1.setText("Proses");
button1.setBounds(20,210,80,20);
button1.addActionListener(this);
add(button1);

button2.setText("Ulangi");
button2.setBounds(120,210,80,20);
button2.addActionListener(this);
add(button2);

button3.setText("Keluar");
button3.setBounds(220,210,80,20);
button3.addActionListener(this);
add(button3);
    }

    @Override
   
public void actionPerformed(ActionEvent e) {
if (e.getActionCommand().equals("Proses")){
                float gaji_pokok = 1000000;

            float total_gaji;

            float masa_kerja;

            float tunj_anak;

            float tunj_istri;

            float istri;

            float anak;

            float ken_gaji = 0;

             masa_kerja = Float.parseFloat(text3.getText());
                 istri = Float.parseFloat(text4.getText());
                 anak = Float.parseFloat(text5.getText());

            /*Proses perhitungan tunjangan anak dan istri*/
             

   tunj_istri = (float) (gaji_pokok * 0.10) * istri;
  tunj_anak = (float)(gaji_pokok * 0.20) * anak;
               

            /*Pemilihan masa kerja dengan fungsi IF*/

            if (masa_kerja <= 4)

            {

                gaji_pokok = (float)gaji_pokok;

            }

            else if (masa_kerja <= 9)

                {

                    ken_gaji = (float)(gaji_pokok * 0.25);

                }

                else if (masa_kerja <= 14)

                    {

                        ken_gaji = (float)(gaji_pokok * 0.50);

                    }

                    else if (masa_kerja <= 19)

                        {

                            ken_gaji = (float)(gaji_pokok * 0.75);

                        }

                         else if (masa_kerja <= 24)

                            {

                                ken_gaji = (float)(gaji_pokok * 1);

                            }

            /*Perhitungan total gajil*/

            total_gaji = gaji_pokok + ken_gaji + tunj_istri + tunj_anak;

            /*Menampilkan hasil*/

           
                text6.setText(String.valueOf(gaji_pokok));
                text7.setText(String.valueOf(ken_gaji));
                text8.setText(String.valueOf(tunj_istri));
                text9.setText(String.valueOf(tunj_anak));
                text10.setText(String.valueOf(total_gaji));
                                   

        }
if(e.getActionCommand().equals("Ulangi")){
text1.setText("");
text2.setText("");
text3.setText("");
text4.setText("");

      text5.setText("");
      text6.setText("");
      text7.setText("");
      text8.setText("");
      text9.setText("");
text10.setText("");         }

if(e.getActionCommand().equals("Keluar")){
System.exit(0);
        }

    }

public static void main(String[]args){
        Jframegaji f1 = new Jframegaji();
f1.ciptakanJFrame();
f1.ciptakanJLabel();
f1.ciptakanJTextField();
f1.ciptakanJButton();
    }
}



Hasil Run Program Gaji Karyawan:
  
3.6 PRAKTIKUM
Code program:
package modul_08;
public class Latihan_01 extends javax.swing.JFrame {
    public Latihan_01() {
        initComponents();
    }
    @SuppressWarnings("unchecked")
    // <editor-fold defaultstate="collapsed" desc="Generated Code">                         
    private void initComponents() {
        jLabel1 = new javax.swing.JLabel();
        jLabel2 = new javax.swing.JLabel();
        jLabel3 = new javax.swing.JLabel();
        jTextField1 = new javax.swing.JTextField();
        jTextField2 = new javax.swing.JTextField();
        jTextField3 = new javax.swing.JTextField();
        jToggleButton1 = new javax.swing.JToggleButton();
        setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
        jLabel1.setText("NIM");
        jLabel2.setText("Nama");
        jLabel3.setText("Program Studi");
        jToggleButton1.setText("Proses");
        jToggleButton1.addMouseListener(new java.awt.event.MouseAdapter() {
            public void mouseClicked(java.awt.event.MouseEvent evt) {
                jToggleButton1MouseClicked(evt);
            }
        });
        javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
        getContentPane().setLayout(layout);
        layout.setHorizontalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(layout.createSequentialGroup()
                .addContainerGap()
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addGroup(layout.createSequentialGroup()
                        .addComponent(jLabel1, javax.swing.GroupLayout.PREFERRED_SIZE, 27, javax.swing.GroupLayout.PREFERRED_SIZE)
                        .addGap(114, 114, 114)
                        .addComponent(jTextField1, javax.swing.GroupLayout.DEFAULT_SIZE, 226, Short.MAX_VALUE))
                    .addGroup(layout.createSequentialGroup()
                        .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addComponent(jLabel3)
                            .addComponent(jLabel2, javax.swing.GroupLayout.PREFERRED_SIZE, 35, javax.swing.GroupLayout.PREFERRED_SIZE))
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                        .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addComponent(jToggleButton1)
                            .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
                                .addComponent(jTextField2, javax.swing.GroupLayout.DEFAULT_SIZE, 226, Short.MAX_VALUE)
                                .addComponent(jTextField3)))))
                .addContainerGap())
        );
        layout.setVerticalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(layout.createSequentialGroup()
                .addGap(20, 20, 20)
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addComponent(jTextField1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addGroup(layout.createSequentialGroup()
                        .addGap(3, 3, 3)
                        .addComponent(jLabel1, javax.swing.GroupLayout.PREFERRED_SIZE, 20, javax.swing.GroupLayout.PREFERRED_SIZE)))
                .addGap(18, 18, 18)
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
                    .addComponent(jTextField2, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addGroup(layout.createSequentialGroup()
                        .addComponent(jLabel2, javax.swing.GroupLayout.PREFERRED_SIZE, 17, javax.swing.GroupLayout.PREFERRED_SIZE)
                        .addGap(3, 3, 3)))
                .addGap(18, 18, 18)
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
                    .addComponent(jTextField3, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addGroup(layout.createSequentialGroup()
                        .addComponent(jLabel3, javax.swing.GroupLayout.PREFERRED_SIZE, 20, javax.swing.GroupLayout.PREFERRED_SIZE)
                        .addGap(3, 3, 3)))
                .addGap(27, 27, 27)
                .addComponent(jToggleButton1)
                .addContainerGap(28, Short.MAX_VALUE))
        );
        pack();
    }// </editor-fold>                       
    private void jToggleButton1MouseClicked(java.awt.event.MouseEvent evt) {                                           
        // TODO add your handling code here:
        jTextField1.setText("20160910015");
        jTextField2.setText("Fitri Nurhayati");
        jTextField3.setText("Sistem Informasi");
    }                                          
    /**
     * @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.getClassName());
                    break;
                }
            }
        } catch (ClassNotFoundException ex) {
            java.util.logging.Logger.getLogger(Latihan_01.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
        } catch (InstantiationException ex) {
            java.util.logging.Logger.getLogger(Latihan_01.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
        } catch (IllegalAccessException ex) {
            java.util.logging.Logger.getLogger(Latihan_01.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
        } catch (javax.swing.UnsupportedLookAndFeelException ex) {
            java.util.logging.Logger.getLogger(Latihan_01.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
        }
        //</editor-fold>
        /* Create and display the form */
        java.awt.EventQueue.invokeLater(new Runnable() {
            public void run() {
                new Latihan_01().setVisible(true);
            }
        });
    }
    // Variables declaration - do not modify                    
    private javax.swing.JLabel jLabel1;
    private javax.swing.JLabel jLabel2;
    private javax.swing.JLabel jLabel3;
    private javax.swing.JTextField jTextField1;
    private javax.swing.JTextField jTextField2;
    private javax.swing.JTextField jTextField3;
    private javax.swing.JToggleButton jToggleButton1;
    // End of variables declaration                  
}
Running Program
3.7 POST TEST
Buat program kalkulator dengan tampilan seperti gambar berikut




Code program:
public class kalkulator extends javax.swing.JFrame {
    double jml,bil1,bil2,hasil;
    String opr;
   
    public kalkulator() {
        initComponents();
        setLayout (null);
        setTitle("Calculator");
        setVisible(true);
    }
   
    @SuppressWarnings("unchecked")
    // <editor-fold defaultstate="collapsed" desc="Generated Code">                          
    private void initComponents() {
        jLabel1 = new javax.swing.JLabel();
        jTextField1 = new javax.swing.JTextField();
        jButton1 = new javax.swing.JButton();
        jButton2 = new javax.swing.JButton();
        jButton3 = new javax.swing.JButton();
        jButton4 = new javax.swing.JButton();
        jButton5 = new javax.swing.JButton();
        jButton6 = new javax.swing.JButton();
        jButton7 = new javax.swing.JButton();
        jButton8 = new javax.swing.JButton();
        jButton9 = new javax.swing.JButton();
        jButton10 = new javax.swing.JButton();
        jButton11 = new javax.swing.JButton();
        jButton12 = new javax.swing.JButton();
        jButton13 = new javax.swing.JButton();
        jButton14 = new javax.swing.JButton();
        jButton15 = new javax.swing.JButton();
        jButton16 = new javax.swing.JButton();
        jButton17 = new javax.swing.JButton();
        jButton18 = new javax.swing.JButton();
        jButton19 = new javax.swing.JButton();
        jButton20 = new javax.swing.JButton();
        jButton21 = new javax.swing.JButton();
        jButton22 = new javax.swing.JButton();
        jButton23 = new javax.swing.JButton();
        jButton24 = new javax.swing.JButton();
        jButton25 = new javax.swing.JButton();
        jButton26 = new javax.swing.JButton();
        jButton27 = new javax.swing.JButton();
        jButton28 = new javax.swing.JButton();
        jLabel2 = new javax.swing.JLabel();
        jLabel3 = new javax.swing.JLabel();
        jLabel4 = new javax.swing.JLabel();
        jLabel1.setText("jLabel1");
        setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
        jTextField1.setFont(new java.awt.Font("Calibri", 0, 20)); // NOI18N
        jTextField1.setHorizontalAlignment(javax.swing.JTextField.RIGHT);
        jButton1.setText("MC");
        jButton1.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jButton1ActionPerformed(evt);
            }
        });
        jButton2.setText("MR");
        jButton2.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jButton2ActionPerformed(evt);
            }
        });
        jButton3.setText("MS");
        jButton3.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jButton3ActionPerformed(evt);
            }
        });
        jButton4.setText("M+");
        jButton4.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jButton4ActionPerformed(evt);
            }
        });
        jButton5.setText("M-");
        jButton5.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jButton5ActionPerformed(evt);
            }
        });
        jButton6.setFont(new java.awt.Font("Times New Roman", 1, 14)); // NOI18N
        jButton6.setText("←");
        jButton6.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jButton6ActionPerformed(evt);
            }
        });
        jButton7.setText("CE");
        jButton7.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jButton7ActionPerformed(evt);
            }
        });
        jButton8.setText("C");
        jButton8.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jButton8ActionPerformed(evt);
            }
        });
        jButton9.setText("±");
        jButton9.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jButton9ActionPerformed(evt);
            }
        });
        jButton10.setText("√");
        jButton10.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jButton10ActionPerformed(evt);
            }
        });
        jButton11.setText("7");
        jButton11.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jButton11ActionPerformed(evt);
            }
        });
        jButton12.setText("8");
        jButton12.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jButton12ActionPerformed(evt);
            }
        });
        jButton13.setText("9");
        jButton13.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jButton13ActionPerformed(evt);
            }
        });
        jButton14.setText("/");
        jButton14.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jButton14ActionPerformed(evt);
            }
        });
        jButton15.setText("%");
        jButton15.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jButton15ActionPerformed(evt);
            }
        });
        jButton16.setText("4");
        jButton16.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jButton16ActionPerformed(evt);
            }
        });
        jButton17.setText("5");
        jButton17.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jButton17ActionPerformed(evt);
            }
        });
        jButton18.setText("6");
        jButton18.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jButton18ActionPerformed(evt);
            }
        });
        jButton19.setText("*");
        jButton19.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jButton19ActionPerformed(evt);
            }
        });
        jButton20.setText("1/x");
        jButton20.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jButton20ActionPerformed(evt);
            }
        });
        jButton21.setText("1");
        jButton21.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jButton21ActionPerformed(evt);
            }
        });
        jButton22.setText("2");
        jButton22.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jButton22ActionPerformed(evt);
            }
        });
        jButton23.setText("3");
        jButton23.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jButton23ActionPerformed(evt);
            }
        });
        jButton24.setText("-");
        jButton24.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jButton24ActionPerformed(evt);
            }
        });
        jButton25.setText("0");
        jButton25.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jButton25ActionPerformed(evt);
            }
        });
        jButton26.setText(".");
        jButton26.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jButton26ActionPerformed(evt);
            }
        });
        jButton27.setText("+");
        jButton27.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jButton27ActionPerformed(evt);
            }
        });
        jButton28.setFont(new java.awt.Font("Times New Roman", 1, 14)); // NOI18N
        jButton28.setText("=");
        jButton28.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jButton28ActionPerformed(evt);
            }
        });
        jLabel2.setFont(new java.awt.Font("Tahoma", 0, 12)); // NOI18N
        jLabel2.setText("View");
        jLabel3.setFont(new java.awt.Font("Tahoma", 0, 12)); // NOI18N
        jLabel3.setText("Edit");
        jLabel4.setFont(new java.awt.Font("Tahoma", 0, 12)); // NOI18N
        jLabel4.setText("Help");
        javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
        getContentPane().setLayout(layout);
        layout.setHorizontalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(layout.createSequentialGroup()
                .addContainerGap()
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addComponent(jTextField1)
                    .addGroup(layout.createSequentialGroup()
                        .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
                            .addGroup(layout.createSequentialGroup()
                                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING, false)
                                    .addComponent(jButton21, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.PREFERRED_SIZE, 1, Short.MAX_VALUE)
                                    .addComponent(jButton16, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.PREFERRED_SIZE, 1, Short.MAX_VALUE)
                                    .addComponent(jButton1, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                                    .addComponent(jButton11, javax.swing.GroupLayout.PREFERRED_SIZE, 1, Short.MAX_VALUE)
                                    .addComponent(jButton6, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
                                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
                                    .addComponent(jButton2, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                                    .addComponent(jButton7, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                                    .addComponent(jButton12, javax.swing.GroupLayout.PREFERRED_SIZE, 1, Short.MAX_VALUE)
                                    .addComponent(jButton17, javax.swing.GroupLayout.PREFERRED_SIZE, 1, Short.MAX_VALUE)
                                    .addComponent(jButton22, javax.swing.GroupLayout.PREFERRED_SIZE, 1, Short.MAX_VALUE)))
                            .addComponent(jButton25, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
                            .addComponent(jButton26, javax.swing.GroupLayout.PREFERRED_SIZE, 1, Short.MAX_VALUE)
                            .addComponent(jButton3, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                            .addComponent(jButton8, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                            .addComponent(jButton13, javax.swing.GroupLayout.PREFERRED_SIZE, 1, Short.MAX_VALUE)
                            .addComponent(jButton18, javax.swing.GroupLayout.PREFERRED_SIZE, 1, Short.MAX_VALUE)
                            .addComponent(jButton23, javax.swing.GroupLayout.PREFERRED_SIZE, 1, Short.MAX_VALUE))
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
                            .addComponent(jButton4, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                            .addComponent(jButton9, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                            .addComponent(jButton14, javax.swing.GroupLayout.PREFERRED_SIZE, 1, Short.MAX_VALUE)
                            .addComponent(jButton19, javax.swing.GroupLayout.PREFERRED_SIZE, 1, Short.MAX_VALUE)
                            .addComponent(jButton24, javax.swing.GroupLayout.PREFERRED_SIZE, 1, Short.MAX_VALUE)
                            .addComponent(jButton27, javax.swing.GroupLayout.PREFERRED_SIZE, 1, Short.MAX_VALUE))
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addComponent(jButton15, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                            .addComponent(jButton10, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                            .addComponent(jButton5, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                            .addGroup(layout.createSequentialGroup()
                                .addComponent(jButton20)
                                .addGap(0, 0, Short.MAX_VALUE))
                            .addComponent(jButton28, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)))
                    .addGroup(layout.createSequentialGroup()
                        .addComponent(jLabel2)
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                        .addComponent(jLabel3)
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                        .addComponent(jLabel4)
                        .addGap(0, 0, Short.MAX_VALUE)))
                .addContainerGap())
        );
        layout.setVerticalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(layout.createSequentialGroup()
                .addGap(4, 4, 4)
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(jLabel2)
                    .addComponent(jLabel3)
                    .addComponent(jLabel4))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addComponent(jTextField1, javax.swing.GroupLayout.PREFERRED_SIZE, 56, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addGap(18, 18, 18)
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(jButton1)
                    .addComponent(jButton2)
                    .addComponent(jButton3)
                    .addComponent(jButton4)
                    .addComponent(jButton5))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                        .addComponent(jButton7)
                        .addComponent(jButton8)
                        .addComponent(jButton9)
                        .addComponent(jButton10))
                    .addComponent(jButton6))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(jButton11)
                    .addComponent(jButton12)
                    .addComponent(jButton13)
                    .addComponent(jButton14)
                    .addComponent(jButton15))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(jButton16)
                    .addComponent(jButton17)
                    .addComponent(jButton18)
                    .addComponent(jButton19)
                    .addComponent(jButton20))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
                    .addGroup(layout.createSequentialGroup()
                        .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                            .addComponent(jButton21)
                            .addComponent(jButton22)
                            .addComponent(jButton23)
                            .addComponent(jButton24))
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                            .addComponent(jButton25)
                            .addComponent(jButton26)
                            .addComponent(jButton27)))
                    .addComponent(jButton28, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
                .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
        );
        pack();
    }// </editor-fold>                       
    private void jButton21ActionPerformed(java.awt.event.ActionEvent evt) {                                         
         jTextField1.setText(jTextField1.getText()+jButton21.getText()); 
    }                                        
    private void jButton25ActionPerformed(java.awt.event.ActionEvent evt) {                                          
         jTextField1.setText(jTextField1.getText()+jButton25.getText()); 
    }                                        
    private void jButton22ActionPerformed(java.awt.event.ActionEvent evt) {                                         
         jTextField1.setText(jTextField1.getText()+jButton22.getText()); 
    }                                        
    private void jButton23ActionPerformed(java.awt.event.ActionEvent evt) {                                         
         jTextField1.setText(jTextField1.getText()+jButton23.getText()); 
    }                                        
    private void jButton16ActionPerformed(java.awt.event.ActionEvent evt) {                                         
         jTextField1.setText(jTextField1.getText()+jButton16.getText()); 
    }                                        
    private void jButton17ActionPerformed(java.awt.event.ActionEvent evt) {                                         
         jTextField1.setText(jTextField1.getText()+jButton17.getText()); 
    }                                        
    private void jButton18ActionPerformed(java.awt.event.ActionEvent evt) {                                         
        jTextField1.setText(jTextField1.getText()+jButton18.getText()); 
    }                                        
    private void jButton11ActionPerformed(java.awt.event.ActionEvent evt) {                                          
        jTextField1.setText(jTextField1.getText()+jButton11.getText()); 
    }                                        
    private void jButton12ActionPerformed(java.awt.event.ActionEvent evt) {                                          
         jTextField1.setText(jTextField1.getText()+jButton12.getText()); 
    }                                        
    private void jButton13ActionPerformed(java.awt.event.ActionEvent evt) {                                         
         jTextField1.setText(jTextField1.getText()+jButton13.getText()); 
    }                                        
    private void jButton27ActionPerformed(java.awt.event.ActionEvent evt) {                                         
        bil1 = Double.parseDouble(jTextField1.getText());
        opr="+";
        jTextField1.setText("");
    }                                        
    private void jButton28ActionPerformed(java.awt.event.ActionEvent evt) {                                          
        if(opr=="+"){
            bil2= Double.parseDouble(jTextField1.getText());
            jml=bil1+bil2;
            jTextField1.setText(String.valueOf(jml));
        }
        else if(opr=="-"){
            bil2= Double.parseDouble(jTextField1.getText());
            jml=bil1-bil2;
            jTextField1.setText(String.valueOf(jml));
        }
        else if(opr=="*"){
            bil2= Double.parseDouble(jTextField1.getText());
            jml=bil1*bil2;
            jTextField1.setText(String.valueOf(jml));
        }
        else if(opr=="/"){
            bil2= Double.parseDouble(jTextField1.getText());
            jml=bil1/bil2;
            jTextField1.setText(String.valueOf(jml));
        }
    }                                        
    private void jButton24ActionPerformed(java.awt.event.ActionEvent evt) {                                         
        bil1 = Double.parseDouble(jTextField1.getText());
        opr = "-";
        jTextField1.setText("");
    }                                         
    private void jButton19ActionPerformed(java.awt.event.ActionEvent evt) {                                         
        bil1 = Double.parseDouble(jTextField1.getText());
        opr = "*";
        jTextField1.setText("");
    }                                         
    private void jButton14ActionPerformed(java.awt.event.ActionEvent evt) {                                         
        bil1 = Double.parseDouble(jTextField1.getText());
        opr = "/";
        jTextField1.setText("");
    }                                        
    private void jButton10ActionPerformed(java.awt.event.ActionEvent evt) {                                         
        bil1 = Double.parseDouble(jTextField1.getText());
        hasil = Math.sqrt(bil1);
        jTextField1.setText(String.valueOf(hasil));
    }                                        
    private void jButton15ActionPerformed(java.awt.event.ActionEvent evt) {                                         
        bil1 = Double.parseDouble(jTextField1.getText());
        hasil = bil1 / 100;
        jTextField1.setText(String.valueOf(hasil));
    }                                        
    private void jButton26ActionPerformed(java.awt.event.ActionEvent evt) {                                          
        bil1 = Double.parseDouble(jTextField1.getText());
        opr += ".";
        jTextField1.setText(bil1+"");
    }                                        
    private void jButton8ActionPerformed(java.awt.event.ActionEvent evt) {                                        
        jTextField1.setText("");
        bil1=0.0;
        bil2=0.0;
        jml=0.0;
        opr="";
    }                                       
    private void jButton7ActionPerformed(java.awt.event.ActionEvent evt) {                                        
            bil1 = 0.0;
            jTextField1.setText("");
    }                                       
    private void jButton6ActionPerformed(java.awt.event.ActionEvent evt) {                                         
            StringBuilder strB = new StringBuilder(jTextField1.getText());
            strB.deleteCharAt(jTextField1.getText().length() - 1);
            String backspace = strB.toString();
            jTextField1.setText(backspace);
    }                                       
    private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {                                        
            bil1 = 0.0;
            bil2 = 0.0;
            hasil = 0.0;
            jTextField1.setText("");
    }                                       
    private void jButton2ActionPerformed(java.awt.event.ActionEvent evt) {                                        
            jTextField1.setText(hasil+"");
    }                                        
    private void jButton3ActionPerformed(java.awt.event.ActionEvent evt) {                                        
            bil1 =  Double.parseDouble(jTextField1.getText());
            hasil = bil1;
            jTextField1.setText(String.valueOf(hasil+""));
    }                                       
    private void jButton4ActionPerformed(java.awt.event.ActionEvent evt) {                                        
            bil1 = Double.parseDouble(jTextField1.getText());
            hasil += bil1;
            jTextField1.setText("");
    }                                       
    private void jButton5ActionPerformed(java.awt.event.ActionEvent evt) {                                        
            bil1 = Double.parseDouble(jTextField1.getText());
            hasil -= bil1;
            jTextField1.setText("");
    }                                       
    private void jButton9ActionPerformed(java.awt.event.ActionEvent evt) {                                         
            bil1 = Double.parseDouble(jTextField1.getText());
            hasil = bil1 - (bil1*2);         
            jTextField1.setText(String.valueOf(hasil));
    }                                       
    private void jButton20ActionPerformed(java.awt.event.ActionEvent evt) {                                         
            bil1 = Double.parseDouble(jTextField1.getText());
            hasil = 1 / bil1;
            jTextField1.setText(String.valueOf(hasil));
    }                                         
    /**
     * @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.getClassName());
                    break;
                }
            }
        } catch (ClassNotFoundException ex) {
            java.util.logging.Logger.getLogger(kalkulator.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
        } catch (InstantiationException ex) {
            java.util.logging.Logger.getLogger(kalkulator.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
        } catch (IllegalAccessException ex) {
            java.util.logging.Logger.getLogger(kalkulator.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
        } catch (javax.swing.UnsupportedLookAndFeelException ex) {
            java.util.logging.Logger.getLogger(kalkulator.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
        }
        //</editor-fold>
        /* Create and display the form */
        java.awt.EventQueue.invokeLater(new Runnable() {
            public void run() {
                new kalkulator().setVisible(true);
            }
        });
    }
    // Variables declaration - do not modify                    
    private javax.swing.JButton jButton1;
    private javax.swing.JButton jButton10;
    private javax.swing.JButton jButton11;
    private javax.swing.JButton jButton12;
    private javax.swing.JButton jButton13;
    private javax.swing.JButton jButton14;
    private javax.swing.JButton jButton15;
    private javax.swing.JButton jButton16;
    private javax.swing.JButton jButton17;
    private javax.swing.JButton jButton18;
    private javax.swing.JButton jButton19;
    private javax.swing.JButton jButton2;
    private javax.swing.JButton jButton20;
    private javax.swing.JButton jButton21;
    private javax.swing.JButton jButton22;
    private javax.swing.JButton jButton23;
    private javax.swing.JButton jButton24;
    private javax.swing.JButton jButton25;
    private javax.swing.JButton jButton26;
    private javax.swing.JButton jButton27;
    private javax.swing.JButton jButton28;
    private javax.swing.JButton jButton3;
    private javax.swing.JButton jButton4;
    private javax.swing.JButton jButton5;
    private javax.swing.JButton jButton6;
    private javax.swing.JButton jButton7;
    private javax.swing.JButton jButton8;
    private javax.swing.JButton jButton9;
    private javax.swing.JLabel jLabel1;
    private javax.swing.JLabel jLabel2;
    private javax.swing.JLabel jLabel3;
    private javax.swing.JLabel jLabel4;
    private javax.swing.JTextField jTextField1;
    // End of variables declaration                  
}
Hasil Run: ( 180 / 2 = 90 )


BAB IV
PENUTUP
4.1   Kesimpulan
Java GUI adalah pemrograman dengan bahasa Java yang dibuat menggunakan aplikasi yang berbasiskan GUI. Tujuannya adalah menambahkan komponen-komponen yangtidak bisa dibuat dalam basis text. Komponen-konponen tersebut bisa berupa tombol, gambar, dll. Tujuannya adalah untuk memudahkan user menggunakan program yangdibuat tersebut.Dalam Java, terdapat dua paket yang dapat digunakan untuk mengembangkan program-program GUI, yaitu AWT dan Swing. AWT adalah istilah bagi sekumpulan objek GUI yang dibawa oleh Java diawal kemunculannya ketika masih mengusung nama Java (Bukan Java 2). Secara umum bisa dikatakan bentuk dari objek-objek AWT akan mengikuti bentuk default yang dibawa oleh sistem operasi, misalnyaWINDOWS. Swing adalah sebutan bagi objek visual yang dibawa Java 2. Objek-objek Swing merupakan pengembangan dari objek AWT. Objek Swing memiliki desain yang berbeda dibandingkan dengan desain default dari sistem operasi. Dengan kata lain objek Swing adalah objek visual yang mengusung teknologi Java murni.


0 komentar:

Posting Komentar