import javax.swing.ButtonGroup;
import javax.swing.JButton;
import javax.swing.JComboBox;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JRadioButton;
import javax.swing.JTextArea;
import javax.swing.JTextField;
public class biodata {
public static void main(String[] args) {
JFrame frame = new JFrame();
frame.setSize(230, 250);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setTitle("Biodata Mahasiswa");
frame.setLocationRelativeTo(null);
JPanel panel = new JPanel();
JLabel nama = new JLabel("Nama :");
JLabel nim = new JLabel("Nim :");
JLabel agama = new JLabel("Agama :");
JLabel jeniskelamin = new JLabel("Jenis Kelamin :");
JTextField tx1 = new JTextField(15);
JTextField tx2 = new JTextField(15);
JComboBox agm = new JComboBox();
agm.addItem("Islam");
agm.addItem("Kristen");
agm.addItem("Budha");
agm.addItem("Hindu");
JRadioButton pria = new JRadioButton("Pria");
JRadioButton wanita = new JRadioButton("Wanita");
ButtonGroup jk = new ButtonGroup();
jk.add(pria);
jk.add(wanita);
JButton exit = new JButton("Exit");
JButton clear = new JButton("Clear");
JButton process = new JButton("Process");
panel.add(nama);
panel.add(tx1);
panel.add(nim);
panel.add(tx2);
panel.add(agama);
panel.add(agm);
panel.add(jeniskelamin);
panel.add(pria);
panel.add(wanita);
panel.add(exit);
panel.add(clear);
panel.add(process);
frame.add(panel);
frame.setVisible(true);
}
}
Minggu, 04 Desember 2011
Kajian 2- Google
import java.awt.Color;
import java.awt.FlowLayout;
import java.awt.Font;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.net.MalformedURLException;
import java.net.URL;
import java.net.URLConnection;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JRadioButton;
import javax.swing.JRadioButtonMenuItem;
import javax.swing.JScrollPane;
import javax.swing.JTextField;
import javax.swing.JTextPane;
public class google {
public static void main(String[] args) {
final JFrame frame = new JFrame();
frame.setSize(450, 200);
frame.setTitle("My Google: " + frame.getWidth());
// frame.setSize(450, 200);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setResizable(false);
frame.setAlwaysOnTop(true);
frame.getContentPane().setBackground(Color.DARK_GRAY);
// frame.setUndecorated(true);
frame.setLocationRelativeTo(null);
frame.setLayout(new FlowLayout());
final JLabel label = new JLabel("ENTER THE URL");
label.setFont(new Font("", 10, 40));// 10->12, 40->80
label.setForeground(Color.MAGENTA);
frame.add(label);
final JTextField field = new JTextField(25);
field.setToolTipText("www.facebook.com");
frame.add(field);
JButton button = new JButton("Search !");
button.setForeground(Color.BLACK);
button.setBackground(Color.ORANGE);
button.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent arg0) {
if (field.getText().equals("")) {
System.out.println("tidak ada teks yang ditulis!");
// JOptionPane.showConfirmDialog(frame, label, "nothing",
// 1);
JOptionPane.showMessageDialog(frame, label,
"Judul Pesannya", 1);// ---> maksudnya 0=x, 1=i,
// 2=!, 3=?
} else {
// frame.setVisible(false);
JFrame frame2 = new JFrame("Frame Hasil");
// frame2.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame2.setSize(600, 400);
frame2.setLocationRelativeTo(frame);
final JTextPane textPane = new JTextPane();
final JScrollPane scrollPane = new JScrollPane(textPane);
panggilKoneksi(field, textPane);
frame2.add(scrollPane);
frame2.setVisible(true);
}
}
private void panggilKoneksi(final JTextField field, final JTextPane textPane) {
try {
URL url = new URL(field.getText().trim());
URLConnection con = url.openConnection();
InputStream is = con.getInputStream();
ByteArrayOutputStream os = new ByteArrayOutputStream();
byte[] b = new byte[10];
int len;
while ((len = is.read(b, 0, b.length)) != -1) {
os.write(b, 0, len);
}
textPane.setText(new String(os.toByteArray()));
os.close();
is.close();
} catch (MalformedURLException e) {
// e.printStackTrace();
// System.out.println("terjadi kesalahan penulisan url!");
JLabel label2 = new JLabel("Salah Tulis di URL.");
JOptionPane.showMessageDialog(frame, label2,
"Kesalahan Tulis", 1);
} catch (IOException e) {
// e.printStackTrace();
// System.out.println("terjadi kesalahan penulisan url!");
JLabel label3 = new JLabel("Salah Tulis di URL ini.");
JOptionPane.showMessageDialog(frame, label3,
"Kesalahan Tulis", 0);
}
}
});
frame.add(button);
// JRadioButton radioButton = new
// JRadioButton(" penelusuran dengan web ");
// frame.add(radioButton);
//
// JRadioButton radioButton2 = new
// JRadioButton(" penelusuran dengan gambar ");
// frame.add(radioButton2);
JRadioButtonMenuItem item = new JRadioButtonMenuItem("choose 1");
item.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent arg0) {
// TODO Auto-generated method stub
System.out.println("helooo...");
}
});
frame.add(item);
JRadioButtonMenuItem item2 = new JRadioButtonMenuItem("choose 2");
item2.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent arg0) {
// TODO Auto-generated method stub
System.out.println("test....");
}
});
frame.add(item2);
JRadioButtonMenuItem item3 = new JRadioButtonMenuItem("choose 3");
item3.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent arg0) {
// TODO Auto-generated method stub
System.out.println("test heloo..");
}
});
frame.add(item3);
JRadioButtonMenuItem item4 = new JRadioButtonMenuItem("choose 4");
item4.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent arg0) {
// TODO Auto-generated method stub
System.out.println("terima kasih..");
System.exit(0);
}
});
frame.add(item4);
frame.setVisible(true);
}
}
import java.awt.FlowLayout;
import java.awt.Font;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.net.MalformedURLException;
import java.net.URL;
import java.net.URLConnection;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JRadioButton;
import javax.swing.JRadioButtonMenuItem;
import javax.swing.JScrollPane;
import javax.swing.JTextField;
import javax.swing.JTextPane;
public class google {
public static void main(String[] args) {
final JFrame frame = new JFrame();
frame.setSize(450, 200);
frame.setTitle("My Google: " + frame.getWidth());
// frame.setSize(450, 200);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setResizable(false);
frame.setAlwaysOnTop(true);
frame.getContentPane().setBackground(Color.DARK_GRAY);
// frame.setUndecorated(true);
frame.setLocationRelativeTo(null);
frame.setLayout(new FlowLayout());
final JLabel label = new JLabel("ENTER THE URL");
label.setFont(new Font("", 10, 40));// 10->12, 40->80
label.setForeground(Color.MAGENTA);
frame.add(label);
final JTextField field = new JTextField(25);
field.setToolTipText("www.facebook.com");
frame.add(field);
JButton button = new JButton("Search !");
button.setForeground(Color.BLACK);
button.setBackground(Color.ORANGE);
button.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent arg0) {
if (field.getText().equals("")) {
System.out.println("tidak ada teks yang ditulis!");
// JOptionPane.showConfirmDialog(frame, label, "nothing",
// 1);
JOptionPane.showMessageDialog(frame, label,
"Judul Pesannya", 1);// ---> maksudnya 0=x, 1=i,
// 2=!, 3=?
} else {
// frame.setVisible(false);
JFrame frame2 = new JFrame("Frame Hasil");
// frame2.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame2.setSize(600, 400);
frame2.setLocationRelativeTo(frame);
final JTextPane textPane = new JTextPane();
final JScrollPane scrollPane = new JScrollPane(textPane);
panggilKoneksi(field, textPane);
frame2.add(scrollPane);
frame2.setVisible(true);
}
}
private void panggilKoneksi(final JTextField field, final JTextPane textPane) {
try {
URL url = new URL(field.getText().trim());
URLConnection con = url.openConnection();
InputStream is = con.getInputStream();
ByteArrayOutputStream os = new ByteArrayOutputStream();
byte[] b = new byte[10];
int len;
while ((len = is.read(b, 0, b.length)) != -1) {
os.write(b, 0, len);
}
textPane.setText(new String(os.toByteArray()));
os.close();
is.close();
} catch (MalformedURLException e) {
// e.printStackTrace();
// System.out.println("terjadi kesalahan penulisan url!");
JLabel label2 = new JLabel("Salah Tulis di URL.");
JOptionPane.showMessageDialog(frame, label2,
"Kesalahan Tulis", 1);
} catch (IOException e) {
// e.printStackTrace();
// System.out.println("terjadi kesalahan penulisan url!");
JLabel label3 = new JLabel("Salah Tulis di URL ini.");
JOptionPane.showMessageDialog(frame, label3,
"Kesalahan Tulis", 0);
}
}
});
frame.add(button);
// JRadioButton radioButton = new
// JRadioButton(" penelusuran dengan web ");
// frame.add(radioButton);
//
// JRadioButton radioButton2 = new
// JRadioButton(" penelusuran dengan gambar ");
// frame.add(radioButton2);
JRadioButtonMenuItem item = new JRadioButtonMenuItem("choose 1");
item.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent arg0) {
// TODO Auto-generated method stub
System.out.println("helooo...");
}
});
frame.add(item);
JRadioButtonMenuItem item2 = new JRadioButtonMenuItem("choose 2");
item2.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent arg0) {
// TODO Auto-generated method stub
System.out.println("test....");
}
});
frame.add(item2);
JRadioButtonMenuItem item3 = new JRadioButtonMenuItem("choose 3");
item3.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent arg0) {
// TODO Auto-generated method stub
System.out.println("test heloo..");
}
});
frame.add(item3);
JRadioButtonMenuItem item4 = new JRadioButtonMenuItem("choose 4");
item4.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent arg0) {
// TODO Auto-generated method stub
System.out.println("terima kasih..");
System.exit(0);
}
});
frame.add(item4);
frame.setVisible(true);
}
}
Kesan, Pesan dan Kritik
Kesan dan Pesan untuk Mata Kuliah Pemograman Visual
Kesan : Menarik
Pesan : Buat kedepan mata kuliah ini setidaknya memiliki materi yang jelas yang mana dipelajari....
Kesan, Pesan dan Kritikan untuk Perkuliahan di Poltek.
Selama di perkuliahan dipoltek saya merasa nyaman sampai sekarang
ini,,,saya merasa senang dengan kurikulum sekarang karna lebih jelas
sesuai jurusan dari pada dahulu dimana mata kuliah yang tak seharusnya
ada malah dipelajari yang tak sesuai dengan jurusan...
Dengan kurikulum sekarang saya masih bertanya mengapa cousware
ditiadakan??. Menurut saya kalau ditiadakan saya sebagai mahasiswa tidak
memiliki standar kompetensi yang harus saya kuasai maksud minimal
mahasiswa harus menguasai satu bagian contohnya.
Selanjutnya saya bertanya mengapa absensi cuma ada hadir sama alpa,
kalau saya mengikuti seminar absensi saya masuk bagian mana., hadir kah
atau alpa.??. lalu dengan berlaku RF ID setidaknya perawatan untuk alat
tersebut di tingkatkan karena saya pernah mengalami dimana saya di satu
mata kuliah yang saya hadir terus malah jadi 60 %.
Masalah fasilitas kampus menurut saya masih kurang contohnya saja labor
untuk pelajaran SQL disana terdapat kabel LAN tapi tidak berfungsi,
jadi kabel LAN disana apakah untuk pajangan saja,,,??? atau untuk
menunjang pelajaran..???., lalu masalah WIFI kenapa dari dulu saya masuk
kesini tidak ada peningkatan maksudnya alias lelet, setidaknya dari
tahun ketahun ditingkatkan jangan ditunggu dikritik dulu baru
diubah,.jika begini terus politeknik mungkin untuk mengejar visi cuma
mimpi.
Kajian 2 - Komponen Swing (Container, PAnel dan Dialgog)
Container : Merupakan komponen khusus yang berguna untuk menampung komponen GUI lainya.
Jenis - jenis container :
- Panel
- Split Pane
- Toll Bar
- Internal Frame
- Tabbed Pane
- Scroll Pane
- Dekstop Pane
- Layered Pane
Panel : Merupakan jenis dari swing container
Dialog : Merupakan jenis dari swing windows
Jenis - jenis container :
- Panel
- Split Pane
- Toll Bar
- Internal Frame
- Tabbed Pane
- Scroll Pane
- Dekstop Pane
- Layered Pane
Panel : Merupakan jenis dari swing container
Dialog : Merupakan jenis dari swing windows
Kajian 1 - Pengenalan Java Basic, Java Swing dan Awt
1. Pengenalan Java.
Sejarah Java :
Java
bermula dari penelitian perusahaan sun Microsystems dengan sandi Green
tahun 1991. Terdapat predisi bahwa microprosesor akan digunakan luas
pada peralatan elektronik. Karna hal tersebut maka dibutuhkan sebuah
bahasa pemograman yang dapat berjalan disemua microprosesor
Tercipta sebuah pemograman baru , oleh James Gosling, yaitu salah satu
orang yang berperan besar dalam proyek tersebut program ini diberi nama
Oak, karna sudah ada bahasa pemograman yang nama Oak maka diganti denga
Java
Pemograman Java.
Dilakukan dengan tiga tahap :
- Menulis programan java.
- Melakukan kompilasi programan java.
- Menjalankan programan java.
Keunggulan Java.
- Relatif mudah dipelajari.
- Mudah dikembangkan
- Plaftrom Independent
2. Java Swing dan Awt.
Merupakan package yang berguna untuk membangun aplikasi dengan
Grapical User Interface ( GUI ). Package.javax.swing.* berisi class -
class yang dapat dipakai untuk membangun tampilan aplikasi serta
interaksi antara pengguna dengan program.
Secara
asitektur , Swing dibangun di atas arsitektur Abstract Windows Toolkit (
AWT ). Merupakan package GUI yang sudah lebih kembangkan, AWT memiliki
banya kekurangan sehingga diperbaiki dengan adanya Swing.
Kajian 3 - GridBagLayout
GridBagLayout merupakan layaout manager yang sangat fleksibel. 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”, yang berarti bahwa koordinat suatu komponen
ditentukan oleh sekumpulan komponen lainnya.Baris dan kolom dari grid
tersebut bersifat “stretch” yang bergantung pada size dan constraint
yang milikinya.
Berikut contoh sintaknya :
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class GridBag1 extends JFrame {
private GridBagConstraints constraints;
public GridBag1( ) {
createUserInterface();
}
private void createUserInterface(){
constraints = new GridBagConstraints( );
this.setLayout(new GridBagLayout( ));
int x, y; // for clarity
this.addGB(new JButton("North"), x = 1, y = 0);
this.addGB(new JButton("West"), x = 0, y = 1);
this.addGB(new JButton("Center"), x = 1, y = 1);
this.addGB(new JButton("East"), x = 2, y = 1);
this.addGB(new JButton("South"), x = 1, y = 2);
this.setTitle("GridBag1");
this.setDefaultCloseOperation( JFrame.EXIT_ON_CLOSE );
this.setSize(225, 150);
this.setLocation(200, 200);
this.setVisible(true);
}
private void addGB(Component component, int x, int y) {
constraints.gridx = x;
constraints.gridy = y;
this.add(component, constraints);
}
public static void main(String[] args) {
GridBag1 app = new GridBag1();
}
}
Berikut contoh sintaknya :
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class GridBag1 extends JFrame {
private GridBagConstraints constraints;
public GridBag1( ) {
createUserInterface();
}
private void createUserInterface(){
constraints = new GridBagConstraints( );
this.setLayout(new GridBagLayout( ));
int x, y; // for clarity
this.addGB(new JButton("North"), x = 1, y = 0);
this.addGB(new JButton("West"), x = 0, y = 1);
this.addGB(new JButton("Center"), x = 1, y = 1);
this.addGB(new JButton("East"), x = 2, y = 1);
this.addGB(new JButton("South"), x = 1, y = 2);
this.setTitle("GridBag1");
this.setDefaultCloseOperation( JFrame.EXIT_ON_CLOSE );
this.setSize(225, 150);
this.setLocation(200, 200);
this.setVisible(true);
}
private void addGB(Component component, int x, int y) {
constraints.gridx = x;
constraints.gridy = y;
this.add(component, constraints);
}
public static void main(String[] args) {
GridBag1 app = new GridBag1();
}
}
Kajian 3 - Grid Layout
Gridlayout merupakan salah satu layout yang digunakanuntuk mengatur tata
letak pada panel. Gridlayout merupakan bagian dari library AWT. Grid
layout menempatkan komponen dalam bentuk “rectangular grid”.
berikut contoh sintaknya :
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class Grid extends JFrame {
public Grid( ) {
createUserInterface();
}
private void createUserInterface(){
JPanel panel1 = new JPanel();
panel1.setLayout(new GridLayout(3, 2));
panel1.add(new JButton("One"));
panel1.add(new JButton("Two"));
panel1.add(new JButton("Three"));
panel1.add(new JButton("Four"));
panel1.add(new JButton("Five"));
this.add(panel1);
this.setTitle("Grid");
this.setDefaultCloseOperation( JFrame.EXIT_ON_CLOSE );
this.setSize(200, 200);
this.setLocation(200, 200);
this.setVisible(true);
}
public static void main(String[] args) {
Grid app = new Grid();
}
}
berikut contoh sintaknya :
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class Grid extends JFrame {
public Grid( ) {
createUserInterface();
}
private void createUserInterface(){
JPanel panel1 = new JPanel();
panel1.setLayout(new GridLayout(3, 2));
panel1.add(new JButton("One"));
panel1.add(new JButton("Two"));
panel1.add(new JButton("Three"));
panel1.add(new JButton("Four"));
panel1.add(new JButton("Five"));
this.add(panel1);
this.setTitle("Grid");
this.setDefaultCloseOperation( JFrame.EXIT_ON_CLOSE );
this.setSize(200, 200);
this.setLocation(200, 200);
this.setVisible(true);
}
public static void main(String[] args) {
Grid app = new Grid();
}
}
Kajian 3 - Box Layout
Layout manager yang telah kita bahas sebelumnya merupakan bagian dari
package java.awt. Javax.swing memiliki beberapa tambahan layout manager
lagi, salah satunya adalah: BoxLayout. Layout manager ini sangat berguna
untuk membuat toolbars sederhana atau vertical button bars.Cara
kerjanya sangat sederhana yaitu menempatkan komponen dalam satu baris
atau satu kolom.
Berikut contoh sintaknya :
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class Boxer extends JFrame {
public Boxer(){
createUserInterface();
}
private void createUserInterface(){
Container box = Box.createHorizontalBox( );
box.add(Box.createHorizontalGlue( ));
box.add(new JButton("In the"));
box.add(Box.createHorizontalGlue( ));
box.add(new JButton("clearing"));
box.add(Box.createHorizontalStrut(10));
box.add(new JButton("stands"));
box.add(Box.createHorizontalStrut(10));
box.add(new JButton("a"));
box.add(Box.createHorizontalGlue( ));
box.add(new JButton("boxer"));
box.add(Box.createHorizontalGlue( ));
this.add(box);
this.setTitle("Boxer");
this.setDefaultCloseOperation( JFrame.EXIT_ON_CLOSE );
this.setSize(250, 250);
this.setLocation(200, 200);
this.pack( );
this.setVisible(true);
}
public static void main(String[] args) {
Boxer app = new Boxer();
}
}
Berikut contoh sintaknya :
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class Boxer extends JFrame {
public Boxer(){
createUserInterface();
}
private void createUserInterface(){
Container box = Box.createHorizontalBox( );
box.add(Box.createHorizontalGlue( ));
box.add(new JButton("In the"));
box.add(Box.createHorizontalGlue( ));
box.add(new JButton("clearing"));
box.add(Box.createHorizontalStrut(10));
box.add(new JButton("stands"));
box.add(Box.createHorizontalStrut(10));
box.add(new JButton("a"));
box.add(Box.createHorizontalGlue( ));
box.add(new JButton("boxer"));
box.add(Box.createHorizontalGlue( ));
this.add(box);
this.setTitle("Boxer");
this.setDefaultCloseOperation( JFrame.EXIT_ON_CLOSE );
this.setSize(250, 250);
this.setLocation(200, 200);
this.pack( );
this.setVisible(true);
}
public static void main(String[] args) {
Boxer app = new Boxer();
}
}
Kajian 3 - Flow LAyout
Flow layout merupakan manajer layout yang paling sederhana. Layout ini
menyusun komponen berdasarkan ukuran default masing-masing, dengan
posisi mulai dari kiri ke kanan dan dari atas kebawahdi dalam container
yang digunakan.
Berikut contoh sintaknya :
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class Flow extends JFrame {
public Flow( ) {
createUserInterface();
}
private void createUserInterface(){
// FlowLayout adalah layout manager default untuk JPanel
JPanel panel1 = new JPanel();
panel1.setLayout(new FlowLayout()); // baris ini dapat dihapus
panel1.add(new JButton("One"));
panel1.add(new JButton("Two"));
panel1.add(new JButton("Three"));
panel1.add(new JButton("Four"));
panel1.add(new JButton("Five"));
this.add(panel1);
this.setTitle("Flow");
this.setDefaultCloseOperation( JFrame.EXIT_ON_CLOSE );
this.setSize(400, 75);
this.setLocation(200, 200);
this.setVisible(true);
}
public static void main(String[] args) {
Flow app = new Flow();
}
}
Berikut contoh sintaknya :
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class Flow extends JFrame {
public Flow( ) {
createUserInterface();
}
private void createUserInterface(){
// FlowLayout adalah layout manager default untuk JPanel
JPanel panel1 = new JPanel();
panel1.setLayout(new FlowLayout()); // baris ini dapat dihapus
panel1.add(new JButton("One"));
panel1.add(new JButton("Two"));
panel1.add(new JButton("Three"));
panel1.add(new JButton("Four"));
panel1.add(new JButton("Five"));
this.add(panel1);
this.setTitle("Flow");
this.setDefaultCloseOperation( JFrame.EXIT_ON_CLOSE );
this.setSize(400, 75);
this.setLocation(200, 200);
this.setVisible(true);
}
public static void main(String[] args) {
Flow app = new Flow();
}
}
Kajian 3 - 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 nampilkannya satu
demi satu.
berikut contoh sintaknya :
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class Card extends JPanel {
CardLayout cards = new CardLayout( );
public Card( ) {
setLayout(cards);
ActionListener listener = new ActionListener( ) {
public void actionPerformed(ActionEvent e) {
cards.next(Card.this);
}
};
JButton button;
button = new JButton("one");
button.addActionListener(listener);
add(button, "one");
button = new JButton("two");
button.addActionListener(listener);
add(button, "two");
button = new JButton("three");
button.addActionListener(listener);
add(button, "three");
}
public static void main(String[] args) {
JFrame frame = new JFrame("Card");
frame.setDefaultCloseOperation( JFrame.EXIT_ON_CLOSE );
frame.setSize(200, 200);
frame.setLocation(200, 200);
frame.setContentPane(new Card( ));
frame.setVisible(true);
}
}
berikut contoh sintaknya :
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class Card extends JPanel {
CardLayout cards = new CardLayout( );
public Card( ) {
setLayout(cards);
ActionListener listener = new ActionListener( ) {
public void actionPerformed(ActionEvent e) {
cards.next(Card.this);
}
};
JButton button;
button = new JButton("one");
button.addActionListener(listener);
add(button, "one");
button = new JButton("two");
button.addActionListener(listener);
add(button, "two");
button = new JButton("three");
button.addActionListener(listener);
add(button, "three");
}
public static void main(String[] args) {
JFrame frame = new JFrame("Card");
frame.setDefaultCloseOperation( JFrame.EXIT_ON_CLOSE );
frame.setSize(200, 200);
frame.setLocation(200, 200);
frame.setContentPane(new Card( ));
frame.setVisible(true);
}
}
KAjian 3 - Border Layout
berikut contoh sintaknya :
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class BorderLayoutApp2 extends JFrame {
public BorderLayoutApp2( ) {
createUserInterface();
}
private void createUserInterface(){
this.setTitle("Border2");
this.setDefaultCloseOperation( JFrame.EXIT_ON_CLOSE );
this.setSize(225, 150);
this.setLocation(200, 200);
this.setVisible(true);
this.setLayout(new BorderLayout( ));
JPanel p = new JPanel( );
p.add(new JButton("North"));
this.add(p, BorderLayout.NORTH);
p = new JPanel( );
p.add(new JButton("South"));
this.add(p, BorderLayout.SOUTH);
p = new JPanel( );
p.add(new JButton("East"));
this.add(p, BorderLayout.EAST);
p = new JPanel( );
p.add(new JButton("West"));
this.add(p, BorderLayout.WEST);
p = new JPanel( );
p.add(new JButton("Center"));
this.add(p, BorderLayout.CENTER);
}
public static void main(String[] args) {
BorderLayoutApp2 app = new BorderLayoutApp2();
}
}
Kajian 4 - Mouse Even Handling
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class MouseEventHadling extends JFrame
implements MouseListener, MouseMotionListener {
private JLabel statusBar;
public MouseEventHadling () {
super ("Mencoba Beberapa Mouse Event Handling");
statusBar = new JLabel();
getContentPane().add(statusBar,BorderLayout.SOUTH);
addMouseListener (this);
addMouseMotionListener (this);
setSize (300,100);
setLocationRelativeTo(null);
setVisible(true);
}
//MouseListener event handler
public void mouseClicked (MouseEvent e) {
statusBar.setText("Clicked at ["+ e.getX() + "," + e.getY() + "]");
}
public void mousePressed (MouseEvent e) {
statusBar.setText("Pressed at ["+ e.getX() + "," + e.getY() + "]");
}
public void mouseReleased (MouseEvent e) {
statusBar.setText("Released at ["+ e.getX() + "," + e.getY() + "]");
}
public void mouseEntered (MouseEvent e) {
statusBar.setText("Entered at ["+ e.getX() + "," + e.getY() + "]");
getContentPane().setBackground(Color.GREEN);
}
public void mouseExited (MouseEvent e) {
statusBar.setText("Mouse outside window");
getContentPane().setBackground(Color.WHITE);
}
//MouseMotionListener event handler
public void mouseDragged (MouseEvent e) {
statusBar.setText("Dragged at ["+ e.getX() + "," + e.getY() + "]");
}
public void mouseMoved (MouseEvent e) {
statusBar.setText("Moved at ["+ e.getX() + "," + e.getY() + "]");
}
public static void main (String args[]) {
MouseEventHadling test = new MouseEventHadling();
test.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
}
import java.awt.event.*;
import javax.swing.*;
public class MouseEventHadling extends JFrame
implements MouseListener, MouseMotionListener {
private JLabel statusBar;
public MouseEventHadling () {
super ("Mencoba Beberapa Mouse Event Handling");
statusBar = new JLabel();
getContentPane().add(statusBar,BorderLayout.SOUTH);
addMouseListener (this);
addMouseMotionListener (this);
setSize (300,100);
setLocationRelativeTo(null);
setVisible(true);
}
//MouseListener event handler
public void mouseClicked (MouseEvent e) {
statusBar.setText("Clicked at ["+ e.getX() + "," + e.getY() + "]");
}
public void mousePressed (MouseEvent e) {
statusBar.setText("Pressed at ["+ e.getX() + "," + e.getY() + "]");
}
public void mouseReleased (MouseEvent e) {
statusBar.setText("Released at ["+ e.getX() + "," + e.getY() + "]");
}
public void mouseEntered (MouseEvent e) {
statusBar.setText("Entered at ["+ e.getX() + "," + e.getY() + "]");
getContentPane().setBackground(Color.GREEN);
}
public void mouseExited (MouseEvent e) {
statusBar.setText("Mouse outside window");
getContentPane().setBackground(Color.WHITE);
}
//MouseMotionListener event handler
public void mouseDragged (MouseEvent e) {
statusBar.setText("Dragged at ["+ e.getX() + "," + e.getY() + "]");
}
public void mouseMoved (MouseEvent e) {
statusBar.setText("Moved at ["+ e.getX() + "," + e.getY() + "]");
}
public static void main (String args[]) {
MouseEventHadling test = new MouseEventHadling();
test.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
}
Kajian 2 - Contoh Menu dengan Koneksi Internet
import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.net.MalformedURLException;
import java.net.URL;
import java.net.URLConnection;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JTextArea;
import javax.swing.JTextField;
public class PIS1003_Mella {
public static void main(String[] args) {
final JFrame frame = new JFrame("PIS 10 03 Mella");
frame.setSize(500, 500);
frame.setLocation(200, 200);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setVisible(true);
frame.setLocationRelativeTo(null);
JPanel panel = new JPanel();
JLabel label = new JLabel("URL");
final JTextField textField = new JTextField(25);
JButton button = new JButton("Search");
final JTextArea textArea = new JTextArea(20, 30);
final JScrollPane scrollPane = new JScrollPane();
scrollPane.getViewport().add(textArea);
JMenuBar menu = new JMenuBar();
JMenu file = new JMenu("file");
JMenu edit = new JMenu("Edit");
JMenu format = new JMenu("Format");
JMenu view = new JMenu("View");
JMenu help = new JMenu("Help");
menu.add(file);
menu.add(edit);
menu.add(format);
menu.add(view);
menu.add(help);
menu.setVisible(true);
JMenuItem menusetting = new JMenu("setting");
JMenuItem menusave = new JMenuItem("save");
JMenuItem menuclose = new JMenuItem("close");
JMenuItem menusetting1 = new JMenuItem("setting1");
JMenuItem menusetting2 = new JMenuItem("setting2");
JMenuItem menuundo = new JMenuItem("Undo" + " " + "ctrl+z");
JMenuItem menucut = new JMenuItem("Cut" + " " + "ctrl+x");
JMenuItem menupaste = new JMenuItem("Paste" + " " + "ctrl+v");
JMenuItem menudelete = new JMenuItem("Delete" + " " + "del");
JMenuItem menuword = new JMenuItem("Word Warp");
JMenuItem menufont = new JMenuItem("Font");
JMenuItem menustatus = new JMenuItem("Status Bar");
JMenuItem menuview = new JMenuItem("View Help");
JMenuItem menuabout = new JMenuItem("About Notepad");
menusetting.add(menusetting1);
menusetting.add(menusetting2);
file.add(menusetting);
file.addSeparator();
file.add(menusave);
file.add(menuclose);
edit.add(menuundo);
edit.add(menucut);
edit.add(menupaste);
edit.add(menudelete);
format.add(menuword);
format.add(menufont);
view.add(menustatus);
help.add(menuview);
help.add(menuabout);
file.setVisible(true);
panel.add(label);
panel.add(textField);
panel.add(button);
panel.add(scrollPane);
frame.add(panel);
frame.add(menu, BorderLayout.NORTH);
frame.setVisible(true);
button.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent arg0) {
koneksi(textField, textArea);
frame.setVisible(true);
}
});
}
private static void koneksi(final JTextField tf, final JTextArea ta) {
try {
URL url = new URL(tf.getText().trim());
URLConnection con = url.openConnection();
InputStream is = con.getInputStream();
ByteArrayOutputStream os = new ByteArrayOutputStream();
byte[] b = new byte[10];
int len;
while ((len = is.read(b, 0, b.length)) != -1) {
os.write(b, 0, len);
}
ta.setText(new String(os.toByteArray()));
os.close();
is.close();
} catch (MalformedURLException e) {
JOptionPane.showMessageDialog(null, "coba lagi url", "Warning", 1);
} catch (IOException e) {
JOptionPane.showMessageDialog(null, "coba lagi url", "Warning", 0);
}
}
}
import java.awt.Color;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.net.MalformedURLException;
import java.net.URL;
import java.net.URLConnection;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JTextArea;
import javax.swing.JTextField;
public class PIS1003_Mella {
public static void main(String[] args) {
final JFrame frame = new JFrame("PIS 10 03 Mella");
frame.setSize(500, 500);
frame.setLocation(200, 200);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setVisible(true);
frame.setLocationRelativeTo(null);
JPanel panel = new JPanel();
JLabel label = new JLabel("URL");
final JTextField textField = new JTextField(25);
JButton button = new JButton("Search");
final JTextArea textArea = new JTextArea(20, 30);
final JScrollPane scrollPane = new JScrollPane();
scrollPane.getViewport().add(textArea);
JMenuBar menu = new JMenuBar();
JMenu file = new JMenu("file");
JMenu edit = new JMenu("Edit");
JMenu format = new JMenu("Format");
JMenu view = new JMenu("View");
JMenu help = new JMenu("Help");
menu.add(file);
menu.add(edit);
menu.add(format);
menu.add(view);
menu.add(help);
menu.setVisible(true);
JMenuItem menusetting = new JMenu("setting");
JMenuItem menusave = new JMenuItem("save");
JMenuItem menuclose = new JMenuItem("close");
JMenuItem menusetting1 = new JMenuItem("setting1");
JMenuItem menusetting2 = new JMenuItem("setting2");
JMenuItem menuundo = new JMenuItem("Undo" + " " + "ctrl+z");
JMenuItem menucut = new JMenuItem("Cut" + " " + "ctrl+x");
JMenuItem menupaste = new JMenuItem("Paste" + " " + "ctrl+v");
JMenuItem menudelete = new JMenuItem("Delete" + " " + "del");
JMenuItem menuword = new JMenuItem("Word Warp");
JMenuItem menufont = new JMenuItem("Font");
JMenuItem menustatus = new JMenuItem("Status Bar");
JMenuItem menuview = new JMenuItem("View Help");
JMenuItem menuabout = new JMenuItem("About Notepad");
menusetting.add(menusetting1);
menusetting.add(menusetting2);
file.add(menusetting);
file.addSeparator();
file.add(menusave);
file.add(menuclose);
edit.add(menuundo);
edit.add(menucut);
edit.add(menupaste);
edit.add(menudelete);
format.add(menuword);
format.add(menufont);
view.add(menustatus);
help.add(menuview);
help.add(menuabout);
file.setVisible(true);
panel.add(label);
panel.add(textField);
panel.add(button);
panel.add(scrollPane);
frame.add(panel);
frame.add(menu, BorderLayout.NORTH);
frame.setVisible(true);
button.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent arg0) {
koneksi(textField, textArea);
frame.setVisible(true);
}
});
}
private static void koneksi(final JTextField tf, final JTextArea ta) {
try {
URL url = new URL(tf.getText().trim());
URLConnection con = url.openConnection();
InputStream is = con.getInputStream();
ByteArrayOutputStream os = new ByteArrayOutputStream();
byte[] b = new byte[10];
int len;
while ((len = is.read(b, 0, b.length)) != -1) {
os.write(b, 0, len);
}
ta.setText(new String(os.toByteArray()));
os.close();
is.close();
} catch (MalformedURLException e) {
JOptionPane.showMessageDialog(null, "coba lagi url", "Warning", 1);
} catch (IOException e) {
JOptionPane.showMessageDialog(null, "coba lagi url", "Warning", 0);
}
}
}
Kajian 2 - ButtonGroup
JButton Group adalah membuat multi-lingkup
pengecualian untuk satu
set
tombol.
Menciptakan satu set tombol ButtonGroup dengan objek yang sama berarti
salah satu
yang dipilh, dari
tombol-tombol tersebut akan
menonaktifkan semua
tombol
lain dalam grup.
Beikut Contoh Sintaknya :
import javax.swing.*;
import java.awt.event.*;
import java.awt.*;
public class buttong
extends JFrame implements ActionListener {
JRadioButton bgRed, bgBlue, bgBlack;
ButtonGroup grup1;
public buttong() {
setTitle("Demo Radio
Button");
setDefaultCloseOperation(EXIT_ON_CLOSE);
getContentPane().setLayout(
new BoxLayout(getContentPane(),
BoxLayout.Y_AXIS));
bgRed = new JRadioButton("Red");
bgBlue = new JRadioButton("Blue", false);
bgBlack = new JRadioButton("Black", false);
bgRed.setActionCommand("merah");
bgBlue.setActionCommand("biru");
bgBlack.setActionCommand("hitam");
grup1 = new ButtonGroup();
grup1.add(bgRed);
grup1.add(bgBlue);
grup1.add(bgBlack);
getContentPane().add(bgRed);
getContentPane().add(bgBlue);
getContentPane().add(bgBlack);
bgRed.addActionListener(this);
bgBlue.addActionListener(this);
bgBlack.addActionListener(this);
}
public void
actionPerformed(ActionEvent evt) {
if (bgRed.isSelected())
getContentPane().setBackground(Color.red);
else if
(evt.getActionCommand().equals("biru"))
getContentPane().setBackground(Color.blue);
else
getContentPane().setBackground(Color.black);
}
public static void main(String[] args) {
buttong demoApp = new buttong();
demoApp.setSize(250,
225);
demoApp.setVisible(true);
}
}
Langganan:
Postingan (Atom)