KAJIAN 1
Apa sih GUI dan CUI itu?
Untuk membuat program GUI, anda dapat menggunakan bahasa pemrograman visual seperti Visual Studio.Net dan Delphi di Windows atau KDevelop plus QT Designer di Linux.Sementara itu, program CUI adalah program yang berjalan dengan mode tampilan konsol. CUI program yang akan anda buat kebanyakan disusun oleh tampilan teks (walaupun anda dapat membuat efek sehingga terlihat tampilan seperti visual).
SWING DAN AWT
Di dalam java terdapat dua paket yang dapat kita gunakan untuk pengembangan program-program GUI. GUI adalah graphical user interface, dalam dunia nyata sebagian programnya berbentuk visual bukan console.Dua paket GUI tersebut adalah SWING dan AWT. AWT(Abstract Window Toolkit) merupakan sekulmpulan library yang tidak tergantung pada platfromserta digunakan untuk menyederhanakan implementasi user-interface, sedangkan Swing merupakan salah satu cara untuk menginplementasikan pemrograman window pada java,beda swing dengan awt adalah, bentuk komponen komponen dari kelas swing sama bentuknya pada semua sistem operasi.
ECLIPSE DAN NETBEANS
Eclipse adalah sebuah IDE (Integrated Development Environment) untuk mengembangkan perangkat lunak dan dapat dijalankan di semua platform (platform-independent). Berikut ini adalah sifat dari Eclipse:
- Multi-platform: Target sistem operasi Eclipse adalah Microsoft Windows, Linux, Solaris, AIX, HP-UX dan Mac OS X.
- Mulit-language: Eclipse dikembangkan dengan bahasa pemrograman Java, akan tetapi Eclipse mendukung pengembangan aplikasi berbasis bahasa pemrograman lainnya, seperti C/C++, Cobol, Python, Perl, PHP, dan lain sebagainya.
- Multi-role: Selain sebagai IDE untuk pengembangan aplikasi, Eclipse pun bisa digunakan untuk aktivitas dalam siklus pengembangan perangkat lunak, seperti dokumentasi, test perangkat lunak, pengembangan web, dan lain sebagainya.
NetBeans merupakan sebuah proyek kode terbuka yang sukses dengan pengguna yang sangat luas, komunitas yang terus tumbuh, dan memiliki hampir 100 mitra (dan terus bertambah!). Sun Microsystems mendirikan proyek kode terbuka NetBeans pada bulan Juni 2000 dan terus menjadi sponsor utama.
KAJIAN 2
1. JDialog: Turunan dan korespondensi pada dialog class dalam package AWT. Biasanya
digunakan untuk menginformasikan sesuatu kepada pengguna atau prompt pengguna untuk input.2. JPanel: Turunan Jcomponent. Kontainer class sederhana tetapi bukan top-level. Korespondensi pada panel class dalam package AWT.
3. Container : Abstract Subclass dari Component Class. Sebuah komponen yang dapat menampung komponen yang lainnya.
KAJIAN 3
Layout manager mengatur tampilan dari komponen di dalam kontainer. Berikut ini beberapa layout manager yang terdapat di dalam Java :
1. Flow Layout Manager
FlowLayout Manager adalah default manager untuk Panel class dan subkelasnya, termasuk
applet class. Cara meletakkan komponen dari FlowLayout Manager dimulai dari kiri ke kanan
dan dari atas ke bawah, dimulai dari pojok kiri atas. Seperti pada saat Anda mengetik
menggunakan editor kata pada umumnya.
2. Border Layout Manager
BorderLayout membagi kontainer menjadi lima bagian diantaranya utara, selatan, timur,
barat, dan tengah. Setiap komponen dimasukkan ke dalam region yang spesifik. Region utara
dan selatan membentuk jalur horizontal sedangkan region timur dan barat membentuk jalur
vertikal. Dan region tengah berada pada perpotongan jalur horizontal dan vertikal. Tampilan
ini adalah bersifat default untuk objek Window, termasuk objek dari subkelas Window yaitu
tipe Frame dan Dialog.
Seperti pada FlowLayout Manager, parameter hgap dan vgap disini juga menjelaskan jarak
antara komponen dengan kontainer.
Untuk menambahkan komponen kedalam region yang spesifik, gunakan metode
menambahkan dan melewatkan dua argumen yaitu : komponen yang ingin dimasukkan ke
dalam region dan region mana yang ingin dipakai untuk meletakkan komponen. Perlu
diperhatikan bahwa hanya satu komponen yang dapat dimasukkan dalam satu region.
Menambahkan lebih dari satu komponen pada kontainer yang bersangkutan, maka komponen
yang terakhir ditambahkan yang akan ditampilkan. Berikut ini adalah daftar dari kelima region.
1. BorderLayout.NORTH
2. BorderLayout.SOUTH
3. BorderLayout.EAST
4. BorderLayout.WEST
5. BorderLayout.CENTER
Berikut ini adalah contoh program yang menunjukkan bagaimana BorderLayout bekerja.
import java.awt.*;
class BorderLayoutDemo extends Frame {
public static void main(String args[]) {
BorderLayoutDemo bld = new BorderLayoutDemo();
bld.setLayout(new BorderLayout(10, 10)); //may remove
bld.add(new Button("NORTH"), BorderLayout.NORTH);
bld.add(new Button("SOUTH"), BorderLayout.SOUTH);
bld.add(new Button("EAST"), BorderLayout.EAST);
bld.add(new Button("WEST"), BorderLayout.WEST);
bld.add(new Button("CENTER"), BorderLayout.CENTER);
bld.setSize(200, 200);
bld.setVisible(true);
}
}
3. Grid Layout Manager
Dengan GridLayout manager, komponen juga diposisikan dari kiri ke kanan dan dari atas ke
bawah seperti pada FlowLayout manager. GridLayout manager membagi kontainer menjadi
baris dan kolom. Semua region memiliki ukuran yang sama. Hal tersebut tidak mempedulikan
ukuran sebenarnya dari komponen.
4. Box Layout
Javax.swingmemiliki beberapa tambahan layout manager lagi, salah satunya adalah: BoxLayout. Layout manager ini sangat berguna untuk membuat toolbarssederhana atau vertical button bars. Cara kerjanya sangat sederhana yaitu menempatkan komponen dalam satu baris atau satu kolom. Untuk mempermudah penggunaan BoxLayout, Swing menyediakan sebuah kelas yang bernama Boxyaitu sebuah container yang secara otomatismemiliki BoxLayout manager.
Contoh :
Javax.swingmemiliki beberapa tambahan layout manager lagi, salah satunya adalah: BoxLayout. Layout manager ini sangat berguna untuk membuat toolbarssederhana atau vertical button bars. Cara kerjanya sangat sederhana yaitu menempatkan komponen dalam satu baris atau satu kolom. Untuk mempermudah penggunaan BoxLayout, Swing menyediakan sebuah kelas yang bernama Boxyaitu sebuah container yang secara otomatismemiliki BoxLayout manager.
Contoh :
Container box =
Box.createHorizontalBox( );
box.add(Box.createHorizontalGlue( ));
box.add(new JButton("In the"));
5. Card Layout
CardLayout merupakan layout manager yang mampu menciptakan efek “tumpukan” komponen. Artinya, layout ini tidak memposisikan komponen di lokasi-lokasi tertentu di dalam kontainer, melainkan menampilkannya satu demi satu.
contoh program :
import java.awt.CardLayout;
import java.awt.Color;
import java.awt.Container;
import javax.swing.JFrame;
import javax.swing.JPanel;
public class CardLayoutBehaviour extends JFrame {
protected CardLayout layout;
public static void main(String[] args) {
CardLayoutBehaviour ct = new CardLayoutBehaviour();
ct.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
ct.displayTab("Green Tab");
ct.setSize(400, 300);
ct.setVisible(true);
}
public CardLayoutBehaviour() {
JPanel tab;
Container pane = getContentPane();
layout = new CardLayout();
pane.setLayout(layout);
tab = new JPanel();
tab.setBackground(Color.red);
pane.add(tab, "Red Tab");
tab = new JPanel();
tab.setBackground(Color.green);
pane.add(tab, "Green Tab");
tab = new JPanel();
tab.setBackground(Color.blue);
pane.add(tab, "Blue Tab");
}
public void displayTab(String name) {
layout.show(this.getContentPane(), name);
}
}
import java.awt.Color;
import java.awt.Container;
import javax.swing.JFrame;
import javax.swing.JPanel;
public class CardLayoutBehaviour extends JFrame {
protected CardLayout layout;
public static void main(String[] args) {
CardLayoutBehaviour ct = new CardLayoutBehaviour();
ct.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
ct.displayTab("Green Tab");
ct.setSize(400, 300);
ct.setVisible(true);
}
public CardLayoutBehaviour() {
JPanel tab;
Container pane = getContentPane();
layout = new CardLayout();
pane.setLayout(layout);
tab = new JPanel();
tab.setBackground(Color.red);
pane.add(tab, "Red Tab");
tab = new JPanel();
tab.setBackground(Color.green);
pane.add(tab, "Green Tab");
tab = new JPanel();
tab.setBackground(Color.blue);
pane.add(tab, "Blue Tab");
}
public void displayTab(String name) {
layout.show(this.getContentPane(), name);
}
}
6. Grid Bag Layou
Layout ini memampukan kita untuk memposisikan komponen relatif terhadap komponen lainnya berdasarkan constraint tertentu. Dengan menggunakan GridBagLayout, kita dapat menciptakan layout apapun juga, tanpa batas. Komponen disusun pada koordinat tertentu pada sebuah grid yang disebut “logical coordinate”. Logical coordinate berarti bahwa koordinat suatu komponen ditentukan oleh sekumpulan komponen lainnya. Baris dan kolom dari grid tersebut bersifat “stretch” yang bergantung pada sizedan constraint yang dimilikinya.
Contoh :
import java.awt.GridLayout;
import javax.swing.JButton;
import javax.swing.JFrame;
public class GridLayoutTest {
public static void main(String[] args) {
JFrame.setDefaultLookAndFeelDecorated(true);
JFrame frame = new JFrame("GridLayout Test");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setLayout(new GridLayout(3, 2));
frame.add(new JButton("Button 1"));
frame.add(new JButton("Button 2"));
frame.add(new JButton("Button 3"));
frame.add(new JButton("Button 4"));
frame.add(new JButton("Button 5"));
frame.add(new JButton("Button 6"));
frame.add(new JButton("Button 7"));
frame.add(new JButton("Button 8"));
frame.pack();
frame.setVisible(true);
}
import javax.swing.JButton;
import javax.swing.JFrame;
public class GridLayoutTest {
public static void main(String[] args) {
JFrame.setDefaultLookAndFeelDecorated(true);
JFrame frame = new JFrame("GridLayout Test");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setLayout(new GridLayout(3, 2));
frame.add(new JButton("Button 1"));
frame.add(new JButton("Button 2"));
frame.add(new JButton("Button 3"));
frame.add(new JButton("Button 4"));
frame.add(new JButton("Button 5"));
frame.add(new JButton("Button 6"));
frame.add(new JButton("Button 7"));
frame.add(new JButton("Button 8"));
frame.pack();
frame.setVisible(true);
}
}
KAJIAN 4
1. Event Listener
Event Listener digunakan untuk menangkap event yang terjadi pada komponen/Event Source. Dibawah ini disajikan beberapa listener yang dapat digunakan dalam mendeteksi event.
2. Mouse Listener
Untuk menangani reaksi dari penekanan tombol pada mouse.
3. Mouse Motion Listener
Untuk menangani reaksi akibat mouse digerakkan, Misalkan melewati komponen tertentu.
4. Action Listener
Untuk menangani reaksi atas perubahan status pada objek yang digunakan. Misalnya akibat penekanan tombol mouse atau keyboard.
KAJIAN 5
Install Driver Connector MySQL
- Buat database jika belum memiliki, sebagai contoh saya adalah database tentang infonegara di MySQL.
- Download driver MySQL connector dan kemudian extract format .zip tersebut.
- Cari file bernama mysql-connector-java-5.0.8-bin.jar. Versi conector java bisa berbagai macam versi, sedang yang saya memakai adalah versi 5.0.
- Copy file tersebut kedalam lib direktori project web application.
- Buat project java baru dan edit build path-nya. Misalnya File>new>java project.
- Setelah terbentuk project file baru, perluas project tersebut dan klik kanan pada JRE Syetem Library.
- Pilih bulid path > configure bild path. Contoh screenshoot nya adalah demikian :
- Klik Add JARs > dan cari file mysql-connector-java-5.0.8-bin.jar > klik OK. Dengan demikian driver koneksi sudah di install pada project java.
Setelah itu kita coba driver tersebut apakah berhasil atau tidak. Untuk itu buat file java class baru dengan Eclipse.
- File > new > class > nama project (misal teskoneksi)
- Masukkan kode program berikut. Sebelumnya perlu diketahui bahwa database yang saya pakai bernama "infonegara",dengan nama user di MySQL "java" dan password "java" dan localhost : 8080. Sehingga kode contohnya sebagai berikut.
- package tutorial.blog.database;
import java.sql.Connection;import java.sql.DriverManager;
public class tes {
public static void main (String[]args) {
try {
Class.forName("com.mysql.jdbc.Driver");
}
catch (Exception ex) {
System.err.println("Error (1): "+ex); System.exit(1);
}
//Bentuk Koneksi
Connection koneksi=null;
try {
koneksi =DriverManager.getConnection ("jdbc:mysql://localhost/infonegara","java","java");
System.out.println("Koneksi berhasil boss...");
}
try {
koneksi =DriverManager.getConnection ("jdbc:mysql://localhost/infonegara","java","java");
System.out.println("Koneksi berhasil boss...");
}
catch (Exception ex) {
System.out.println("Error (2): "+ex);
System.exit(1);
}
}
}
System.out.println("Error (2): "+ex);
System.exit(1);
}
}
}
- Jalankan program, dan jika berhasil koneksi dengan database MySQL maka akan terlihat tulisan "Koneksi berhasil boss...". Jika belum berhasil, coba cek apa dan dimana kesalahannya. Sebab kode diatas sudah teruji dan berhasil..
Tidak ada komentar:
Posting Komentar