Laporan Praktikum Bahasa Pemrograman 1
Modul VIII
Dosen pengampu Dede Irawan, M.Kom
“GRAPHICAL USER INTERFACE
(2)”
Disusun Oleh
:
Reny
Hernawati
20160910053
SI A 2016
Universitas
Kuningan
Jl.Cut Nyak
Dien No. 36A Cijoho, Kuningan
Telp.
(0232)874824
KATA
PENGANTAR
Alhamdulillah, puji syukur saya panjatkan ke
Hadirat Allah SWT, karena hanya dengan berkat-Nya saya dapat menyelesaikan
makalah ini. Tak lupa shalawat serta salam semoga dilimpahkan kepada junjungan
kita Nabi Besar Muhammad SAW yang telah membawa kita dari alam gelap ke alam
yang terang benderang, dari alam jahiliyah ke alam yang penuh
berkah ini. Saya mengucapkan terima kasih kepada :
Bapak Dede Irawan, M.Kom selaku dosen
Praktikum Bahasa Pemrograman 1.
Saya menyusun makalah ini dengan sungguh –
sungguh dan semampu saya. Saya berharap dengan adanya makalah ini dapat
memberikan pengalaman maupun pelajaran yang berarti bagi siapa saja yang
membacanya.
Makalah ini dibuat sebagai salah satu laporan
praktikum bahasa pemrogaman 1. Makalah
ini saya buat satu jilid yang berisi tentang “Graphical User interface (2)”.
Akhir kata, manusia tidak ada yang sempurna,
begitu pula dengan makalah ini jauh dari kata sempurna. Oleh karena itu saran
dan kritik yang membangun sangat saya nantikan demi kesempurnaan makalah ini.
DAFTAR ISI
KATA
PENGANTAR
DAFTAR ISI
BAB I
PENDAHULUAN
A.
LATAR
BELAKANG
B.
RUMUSAN
MASALAH
C.
TUJUAN
PENULISAN
BAB II
PEMBAHASAN
- Pengertian java
- Pengertian GUI
- Pengertian Java GUI
- Komponen penyusun java GUI
- Fungsi java GUI
- Macam – macam java GUI
- Kelebihan dan kekurangan GUI
BAB III
PENUTUP
A.
KESIMPULAN
B.
DAFTAR
PUSTAKA
BAB I
PENDAHULUAN
A.
Latar
Belakang
GUI atau kepanjangan
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 yaitu
dirancang dengan penelitian yang baik, dimana nantinya aplikasi tersebut dapat dengan
mudah dioperasikan user.
B.
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 ?
C. 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 dari Java.
BAB II
PEMBAHASAN
A.
Pengertian Java
JAVA merupakan sebuah
bahasa pemrograman yang dijalankan di berbagai komputer dan pada handphone.
Java pertama kali dikembangkan oleh Sun Microsystems yang menjelaskan bahwa
bahasa java dapat digambarkan sebagai a simple, object-oriented, distributed,
interpreted, robust, secure, architecture neutral, portable, high-performance,
multithreaded, dan dynamic language. Sebuah program dalam bahasa java dirakit
(compiled) menjadi sebuah berkas byte-code.
B.
Pengertian GUI
GUI ( Graphical
User Interface ) adalah metode interaksi secara grafis antara pengguna
dengan komputer yang berfungsi memudahkan pengguna dalam menggunakan computer
secara maksimal. Contoh penggunaan jenis GUI : Microsoft Windows, MacOS dan
Xwin.
C.
Pengertian Java GUI
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. Banyak sudah aplikasi yang telah
Java kembangankan dengan menggunakan GUI sebagai nilai penggunaan dan nilai
jual. Software perangkat lunak dan keras juga termasuk di dalamnya. Java GUI
adalah program pengembangan suatu user interface dengan mengetengahkan graphic
sebagai penghubung user dengan sistem, sehingga mudah dalam implementasi
aplikasi sistem tersebut.
D.
Komponen penyusun Java GUI
Komponen Utama GUI java adalah JFC (Java
Fundamental Class)
- Koordinat GUI
- 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
- Swing Product SUN dalam membangun GUI yang Independent sehingga bersifat cross platform dalam tampilan window yang dihasilkan. Paket dasar: javax.swing.Jcomponent
- Event Handler Aksi-reaksi yang diberikan pada tiap-tiap komponen GUI
E.
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 :
ü Pointing device dengan perangkat berupa mouse
ü Memiliki fungsi sebagai plug and play, yang mana memudahkan user dalam
menginstall dan uninstall hardware/sofware (sinkronisasi)
ü 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
ü Untuk digunakan dalam pembuatan System Operasi sebagai User friendly dan
ergonomis
ü Pembuatan website
ü Opensource software/hardware atau pengembang aplikasi-aplikasi skala besar
lainnya.
F.
Macam – macam GUI
Ini adalah beberapa macam contoh GUI pada
Java :
v 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.
v 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.
Selain itu, Swing
juga mempunyai kemampuan untuk berganti-ganti tampilan menggunakan LAF (Look
And Feel) atau themes Sayang-nya, jika kita menginginkan tampilan GUI yang native (tampilan-nya
sama seperti aplikasi-aplikasi lain pada sistem operasi target) Swing
seperti-nya masih terasa kurang smooth terutama dukungan
pada font rendering-nya.
v 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.
v QtJambi – Trolltech -> Nokia Product -> Stopped and Taken By
Community
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.
v JavaGNOME – 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.
G.
Kelebihan dan Kekurangan GUI
·
Kelebihan GUI :
o Desain Grafis lebih menarik.
o GUI memungkinkan user untuk berinteraksi dengan komputer secara lebih baik.
o Memudahkan pengguna.
o Menarik minat pengguna.
o Resolusi gambar yang tinggi.
·
Kekurangan GUI :
o Memakan memory yang sangat besar.
o Bergantung pada perangkat keras.
o Membutuhkan banyak tempat pada layar komputer.
o Tidak fleksibel.
POST TEST
Buat program kalkulator dengan tampilan seperti gambar berikut
ü Script
/*
* To change
this license header, choose License Headers in Project Properties.
* To change
this template file, choose Tools | Templates
* and open the
template in the editor.
*/
/**
*
* @author ASUS
*/
public class Latihan_02 extends javax.swing.JFrame {
double
angkapertama, angkakedua,hasil;
String o;
/**
* Creates
new form Latihan_02
*/
public
Latihan_02() {
initComponents();
}
/**
* 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() {
jScrollPane1 = new javax.swing.JScrollPane();
jTextArea1 = new javax.swing.JTextArea();
jScrollPane2 = new javax.swing.JScrollPane();
jTextArea2 = new javax.swing.JTextArea();
jScrollPane3 = new javax.swing.JScrollPane();
djhscjd
= new javax.swing.JTextPane();
jScrollPane4 = new javax.swing.JScrollPane();
jTextArea3 = new javax.swing.JTextArea();
jScrollPane5 = new javax.swing.JScrollPane();
jTextArea4 = new javax.swing.JTextArea();
jLabel2
= new javax.swing.JLabel();
jComboBox1 = new javax.swing.JComboBox();
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();
jLabel1
= new javax.swing.JLabel();
jTextField1 = new javax.swing.JTextField();
jLabel3
= new javax.swing.JLabel();
jLabel4
= new javax.swing.JLabel();
jLabel5
= new javax.swing.JLabel();
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();
jButton29 = new javax.swing.JButton();
jTextArea1.setColumns(20);
jTextArea1.setRows(5);
jScrollPane1.setViewportView(jTextArea1);
jTextArea2.setColumns(20);
jTextArea2.setRows(5);
jScrollPane2.setViewportView(jTextArea2);
jScrollPane3.setViewportView(djhscjd);
jTextArea3.setColumns(20);
jTextArea3.setRows(5);
jTextArea3.setText("Calculator");
jScrollPane4.setViewportView(jTextArea3);
jTextArea4.setColumns(20);
jTextArea4.setRows(5);
jScrollPane5.setViewportView(jTextArea4);
jLabel2.setText("jLabel2");
jComboBox1.setModel(new javax.swing.DefaultComboBoxModel(new String[] {
"Item 1", "Item 2", "Item 3", "Item 4"
}));
setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
jButton1.setText("0");
jButton1.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jButton1ActionPerformed(evt);
}
});
jButton2.setText("1");
jButton2.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jButton2ActionPerformed(evt);
}
});
jButton3.setText("2");
jButton3.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jButton3ActionPerformed(evt);
}
});
jButton4.setText("3");
jButton4.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jButton4ActionPerformed(evt);
}
});
jButton5.setText("4");
jButton5.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jButton5ActionPerformed(evt);
}
});
jButton6.setText("5");
jButton6.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jButton6ActionPerformed(evt);
}
});
jButton7.setText("6");
jButton7.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jButton7ActionPerformed(evt);
}
});
jButton8.setText("7");
jButton8.setCursor(new java.awt.Cursor(java.awt.Cursor.DEFAULT_CURSOR));
jButton8.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jButton8ActionPerformed(evt);
}
});
jButton9.setText("8");
jButton9.addActionListener(new java.awt.event.ActionListener() {
public void
actionPerformed(java.awt.event.ActionEvent evt) {
jButton9ActionPerformed(evt);
}
});
jButton10.setText("9");
jButton10.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jButton10ActionPerformed(evt);
}
});
jButton11.setText(".");
jButton11.addActionListener(new java.awt.event.ActionListener() {
public void
actionPerformed(java.awt.event.ActionEvent evt) {
jButton11ActionPerformed(evt);
}
});
jButton12.setText("+");
jButton12.addActionListener(new java.awt.event.ActionListener() {
public void
actionPerformed(java.awt.event.ActionEvent evt) {
jButton12ActionPerformed(evt);
}
});
jButton13.setText("-");
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("=");
jButton16.addActionListener(new java.awt.event.ActionListener() {
public void
actionPerformed(java.awt.event.ActionEvent evt) {
jButton16ActionPerformed(evt);
}
});
jButton17.setText("%");
jButton17.addActionListener(new java.awt.event.ActionListener() {
public void
actionPerformed(java.awt.event.ActionEvent evt) {
jButton17ActionPerformed(evt);
}
});
jLabel1.setFont(new java.awt.Font("Script MT Bold", 0, 36));
// NOI18N
jLabel1.setText("Calculator");
jTextField1.setCursor(new java.awt.Cursor(java.awt.Cursor.TEXT_CURSOR));
jTextField1.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jTextField1ActionPerformed(evt);
}
});
jLabel3.setText("View");
jLabel4.setText("Edit");
jLabel5.setText("Help");
jButton19.setText("←");
jButton19.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jButton19ActionPerformed(evt);
}
});
jButton20.setText("CE");
jButton20.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jButton20ActionPerformed(evt);
}
});
jButton21.setText("C");
jButton21.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jButton21ActionPerformed(evt);
}
});
jButton22.setText("±");
jButton22.addActionListener(new
java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jButton22ActionPerformed(evt);
}
});
jButton23.setText("√");
jButton23.addActionListener(new
java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jButton23ActionPerformed(evt);
}
});
jButton24.setText("MC");
jButton24.addActionListener(new
java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jButton24ActionPerformed(evt);
}
});
jButton25.setText("MR");
jButton25.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jButton25ActionPerformed(evt);
}
});
jButton26.setText("MS");
jButton26.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jButton26ActionPerformed(evt);
}
});
jButton27.setText("M+");
jButton27.addActionListener(new
java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jButton27ActionPerformed(evt);
}
});
jButton28.setText("M-");
jButton28.addActionListener(new
java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jButton28ActionPerformed(evt);
}
});
jButton29.setText("1/x");
jButton29.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jButton29ActionPerformed(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()
.addGap(0, 0, Short.MAX_VALUE)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING,
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING,
layout.createSequentialGroup()
.addComponent(jTextField1, javax.swing.GroupLayout.PREFERRED_SIZE, 267,
javax.swing.GroupLayout.PREFERRED_SIZE)
.addGap(12,
12, 12))
.addGroup(layout.createSequentialGroup()
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING,
false)
.addComponent(jButton8, javax.swing.GroupLayout.PREFERRED_SIZE, 47,
javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(jButton19, javax.swing.GroupLayout.Alignment.LEADING,
javax.swing.GroupLayout.PREFERRED_SIZE, 47,
javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(jButton24, javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jButton5, javax.swing.GroupLayout.PREFERRED_SIZE, 47,
javax.swing.GroupLayout.PREFERRED_SIZE))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jButton6, javax.swing.GroupLayout.Alignment.TRAILING,
javax.swing.GroupLayout.PREFERRED_SIZE, 47,
javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(jButton9, javax.swing.GroupLayout.PREFERRED_SIZE, 47,
javax.swing.GroupLayout.PREFERRED_SIZE))
.addGap(6,
6, 6)
.addComponent(jButton7, javax.swing.GroupLayout.PREFERRED_SIZE, 46,
javax.swing.GroupLayout.PREFERRED_SIZE))
.addGroup(layout.createSequentialGroup()
.addGap(54, 54, 54)
.addComponent(jButton10, javax.swing.GroupLayout.PREFERRED_SIZE, 46, javax.swing.GroupLayout.PREFERRED_SIZE)))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addComponent(jButton15, javax.swing.GroupLayout.PREFERRED_SIZE, 49,
javax.swing.GroupLayout.PREFERRED_SIZE)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(jButton17, javax.swing.GroupLayout.PREFERRED_SIZE, 49,
javax.swing.GroupLayout.PREFERRED_SIZE))
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING,
layout.createSequentialGroup()
.addComponent(jButton14, javax.swing.GroupLayout.PREFERRED_SIZE, 49,
javax.swing.GroupLayout.PREFERRED_SIZE)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(jButton29, javax.swing.GroupLayout.PREFERRED_SIZE, 51,
javax.swing.GroupLayout.PREFERRED_SIZE)
.addContainerGap())))
.addGroup(layout.createSequentialGroup()
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING,
false)
.addComponent(jButton20, javax.swing.GroupLayout.PREFERRED_SIZE, 47, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(jButton25))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING,
false)
.addComponent(jButton26)
.addComponent(jButton21, javax.swing.GroupLayout.PREFERRED_SIZE, 47,
javax.swing.GroupLayout.PREFERRED_SIZE))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
.addComponent(jButton27)
.addComponent(jButton22, javax.swing.GroupLayout.PREFERRED_SIZE, 49,
javax.swing.GroupLayout.PREFERRED_SIZE))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING,
false)
.addComponent(jButton23, javax.swing.GroupLayout.PREFERRED_SIZE, 49,
javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(jButton28, javax.swing.GroupLayout.PREFERRED_SIZE, 49,
javax.swing.GroupLayout.PREFERRED_SIZE))
.addContainerGap()))))
.addGroup(layout.createSequentialGroup()
.addComponent(jLabel3)
.addGap(18, 18,
18)
.addComponent(jLabel4)
.addGap(18, 18,
18)
.addComponent(jLabel5)
.addGap(21, 21,
21))))
.addGroup(layout.createSequentialGroup()
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING,
false)
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING,
layout.createSequentialGroup()
.addComponent(jButton1, javax.swing.GroupLayout.PREFERRED_SIZE, 105,
javax.swing.GroupLayout.PREFERRED_SIZE)
.addGap(107,
107, 107))
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING,
layout.createSequentialGroup()
.addComponent(jButton2, javax.swing.GroupLayout.PREFERRED_SIZE, 47,
javax.swing.GroupLayout.PREFERRED_SIZE)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED,
javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addComponent(jButton3, javax.swing.GroupLayout.PREFERRED_SIZE, 47,
javax.swing.GroupLayout.PREFERRED_SIZE)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jButton11, javax.swing.GroupLayout.Alignment.TRAILING,
javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(jButton4, javax.swing.GroupLayout.Alignment.TRAILING,
javax.swing.GroupLayout.PREFERRED_SIZE, 45,
javax.swing.GroupLayout.PREFERRED_SIZE))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING,
false)
.addComponent(jButton13, javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addComponent(jButton12, javax.swing.GroupLayout.PREFERRED_SIZE, 49,
javax.swing.GroupLayout.PREFERRED_SIZE))))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(jButton16, javax.swing.GroupLayout.PREFERRED_SIZE, 51,
javax.swing.GroupLayout.PREFERRED_SIZE)
.addGap(0, 0, Short.MAX_VALUE))))
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING,
layout.createSequentialGroup()
.addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addComponent(jLabel1)
.addGap(58, 58, 58))
);
layout.setVerticalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING,
layout.createSequentialGroup()
.addGap(10, 10, 10)
.addComponent(jLabel1, javax.swing.GroupLayout.PREFERRED_SIZE, 31,
javax.swing.GroupLayout.PREFERRED_SIZE)
.addGap(18, 18, 18)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jLabel3)
.addComponent(jLabel4)
.addComponent(jLabel5))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(jTextField1, javax.swing.GroupLayout.PREFERRED_SIZE, 43,
javax.swing.GroupLayout.PREFERRED_SIZE)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jButton24)
.addComponent(jButton25)
.addComponent(jButton26)
.addComponent(jButton27)
.addComponent(jButton28))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jButton19)
.addComponent(jButton20)
.addComponent(jButton21)
.addComponent(jButton22)
.addComponent(jButton23))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jButton10)
.addComponent(jButton9)
.addComponent(jButton8)
.addComponent(jButton15)
.addComponent(jButton17))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jButton7)
.addComponent(jButton6)
.addComponent(jButton5)
.addComponent(jButton14)
.addComponent(jButton29))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jButton4)
.addComponent(jButton3)
.addComponent(jButton2)
.addComponent(jButton13))
.addGap(3, 3, 3)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jButton11)
.addComponent(jButton1)
.addComponent(jButton12)))
.addComponent(jButton16, javax.swing.GroupLayout.PREFERRED_SIZE, 58,
javax.swing.GroupLayout.PREFERRED_SIZE))
.addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
);
pack();
}//
</editor-fold>
private void
jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
jTextField1.setText(jTextField1.getText() + jButton1.getText());
}
private void
jButton2ActionPerformed(java.awt.event.ActionEvent evt) {
jTextField1.setText(jTextField1.getText()
+ jButton2.getText());
}
private void
jButton3ActionPerformed(java.awt.event.ActionEvent evt) {
jTextField1.setText(jTextField1.getText() + jButton3.getText());
}
private void
jButton4ActionPerformed(java.awt.event.ActionEvent evt) {
jTextField1.setText(jTextField1.getText() + jButton4.getText());
}
private void
jButton5ActionPerformed(java.awt.event.ActionEvent evt) {
jTextField1.setText(jTextField1.getText() + jButton5.getText());
}
private void
jButton6ActionPerformed(java.awt.event.ActionEvent evt) {
jTextField1.setText(jTextField1.getText() + jButton6.getText());
}
private void
jButton7ActionPerformed(java.awt.event.ActionEvent evt) {
jTextField1.setText(jTextField1.getText() + jButton7.getText());
}
private void
jButton8ActionPerformed(java.awt.event.ActionEvent evt) {
jTextField1.setText(jTextField1.getText() + jButton8.getText());
}
private void
jButton9ActionPerformed(java.awt.event.ActionEvent evt) {
jTextField1.setText(jTextField1.getText() + jButton9.getText());
}
private void
jButton10ActionPerformed(java.awt.event.ActionEvent evt) {
jTextField1.setText(jTextField1.getText() + jButton10.getText());
}
private void
jButton11ActionPerformed(java.awt.event.ActionEvent evt) {
jTextField1.setText(jTextField1.getText() + ".");
}
private void
jButton12ActionPerformed(java.awt.event.ActionEvent evt) {
angkapertama = Double.parseDouble(jTextField1.getText());
o =
"+";
jTextField1.setText("");
}
private void
jButton13ActionPerformed(java.awt.event.ActionEvent evt) {
angkapertama = Double.parseDouble(jTextField1.getText());
o =
"-";
jTextField1.setText("");
}
private void
jButton14ActionPerformed(java.awt.event.ActionEvent evt) {
angkapertama =
Double.parseDouble(jTextField1.getText());
o =
"*";
jTextField1.setText("");
}
private void
jButton15ActionPerformed(java.awt.event.ActionEvent evt) {
angkapertama = Double.parseDouble(jTextField1.getText());
o =
"/";
jTextField1.setText("");
}
private void
jButton16ActionPerformed(java.awt.event.ActionEvent evt) {
angkakedua = Double.parseDouble(jTextField1.getText());
if(o
== "+"){
hasil = angkapertama + angkakedua;
jTextField1.setText(String.valueOf(hasil));
}
if(o
== "-"){
hasil = angkapertama - angkakedua;
jTextField1.setText(String.valueOf(hasil));
}
if(o
== "*"){
hasil = angkapertama * angkakedua;
jTextField1.setText(hasil+"");
jTextField1.setText(String.valueOf(hasil));
}
if(o
== "/"){
hasil = angkapertama / angkakedua;
jTextField1.setText(hasil+"");
jTextField1.setText(String.valueOf(hasil));
}
if(o
== "√"){
hasil = Math.sqrt(angkapertama);
jTextField1.setText(String.valueOf(hasil));
}
}
private void
jButton17ActionPerformed(java.awt.event.ActionEvent evt) {
angkapertama
= Double.parseDouble(jTextField1.getText());
hasil
= angkapertama / 100;
jTextField1.setText(String.valueOf(hasil));
}
private void
jTextField1ActionPerformed(java.awt.event.ActionEvent evt) {
// TODO
add your handling code here:
}
private void
jButton24ActionPerformed(java.awt.event.ActionEvent evt) {
angkapertama = 0.0;
angkakedua = 0.0;
hasil
= 0.0;
jTextField1.setText("");
}
private void
jButton23ActionPerformed(java.awt.event.ActionEvent evt) {
angkapertama = Double.parseDouble(jTextField1.getText());
o =
"√";
jTextField1.setText("");
jTextField1.setText(Double.toString((double) Math.sqrt(angkapertama)));
}
private void
jButton29ActionPerformed(java.awt.event.ActionEvent evt) {
angkapertama = Double.parseDouble(jTextField1.getText());
hasil
= 1 / angkapertama;
jTextField1.setText(String.valueOf(hasil));
}
private void
jButton28ActionPerformed(java.awt.event.ActionEvent evt) {
angkapertama = Double.parseDouble(jTextField1.getText());
hasil
-= angkapertama;
jTextField1.setText("");
}
private void
jButton27ActionPerformed(java.awt.event.ActionEvent evt) {
angkapertama = Double.parseDouble(jTextField1.getText());
hasil
+= angkapertama;
jTextField1.setText("");
}
private void
jButton21ActionPerformed(java.awt.event.ActionEvent evt) {
angkapertama = 0.0;
angkakedua = 0.0;
jTextField1.setText("");
}
private void
jButton25ActionPerformed(java.awt.event.ActionEvent evt) {
jTextField1.setText(hasil+"");
}
private void
jButton26ActionPerformed(java.awt.event.ActionEvent evt) {
angkapertama = Double.parseDouble(jTextField1.getText());
hasil = angkapertama;
jTextField1.setText(String.valueOf(hasil+""));
}
private void
jButton22ActionPerformed(java.awt.event.ActionEvent evt) {
hasil = angkapertama - (angkapertama*2);
jTextField1.setText(String.valueOf(hasil));
}
private void
jButton20ActionPerformed(java.awt.event.ActionEvent evt) {
angkapertama = 0.0;
jTextField1.setText("");
}
private void
jButton19ActionPerformed(java.awt.event.ActionEvent evt) {
String backspace = null;
if(jTextField1.getText().length()
> 0){
StringBuilder strB = new StringBuilder(jTextField1.getText());
strB.deleteCharAt(jTextField1.getText().length() - 1);
backspace = strB.toString();
jTextField1.setText(backspace);
}
}
/**
* @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_02.class.getName()).log(java.util.logging.Level.SEVERE,
null, ex);
} catch
(InstantiationException ex) {
java.util.logging.Logger.getLogger(Latihan_02.class.getName()).log(java.util.logging.Level.SEVERE,
null, ex);
} catch
(IllegalAccessException ex) {
java.util.logging.Logger.getLogger(Latihan_02.class.getName()).log(java.util.logging.Level.SEVERE,
null, ex);
} catch
(javax.swing.UnsupportedLookAndFeelException ex) {
java.util.logging.Logger.getLogger(Latihan_02.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_02().setVisible(true);
}
});
}
// Variables
declaration - do not modify
private
javax.swing.JTextPane djhscjd;
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 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 jButton29;
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.JComboBox jComboBox1;
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.JScrollPane jScrollPane2;
private
javax.swing.JScrollPane jScrollPane3;
private
javax.swing.JScrollPane jScrollPane4;
private
javax.swing.JScrollPane jScrollPane5;
private
javax.swing.JTextArea jTextArea1;
private
javax.swing.JTextArea jTextArea2;
private
javax.swing.JTextArea jTextArea3;
private
javax.swing.JTextArea jTextArea4;
private
javax.swing.JTextField jTextField1;
// End of
variables declaration
}
- Design
ü Hasil Running
BAB III
PENUTUP
A.
Kesimpulan
Java GUI adalah
pemrograman dengan bahasa Java yang dibuat menggunakan aplikasiyang berbasiskan
GUI. Tujuannya adalah menambahkan komponen-komponen yang tidak bisa dibuat
dalam basis text. Komponen-konponen tersebut bisa berupa tombol, gambar, dll.
Tujuannya adalah untuk memudahkan user menggunakan program yang dibuat
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,
misalnya WINDOWS. 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.
Tidak ada komentar:
Posting Komentar