Bab 11: KOMPONEN - KOMPONEN SWING LANJUTAN
KOMPONEN - KOMPONEN SWING LANJUTAN
Swing merupakan alternatif lain untuk mengimplementasikan pemprograman window. Walaupun diimplementasikan berdasarkan kelas AWT , swing tidak menggunakan komponen yang terdapat pada AWT, sehingga tampilan komponen dalam swing tidak tergantung pada sistem Window local. Dengan demikian tampilan grafik dari swing untuk semua sistem operasi menjadi serupa. Jcomponent merupakan super kelas bagi sejumlah kelas misalnya JcomboBox, Jlabel, Jlist dan Jpanel dan lainnya.
CONTOH PROGRAM
1. Membuat program contoh dari Jlabel dan Jbutton menggunakan icon dan Tool Tip
import javax.swing.*;
import java.awt.*;
public class cthIcon {
public static void main(String[] args){
JFrame myFrame = new JFrame ("Contoh program AWT");
Icon ikon = new ImageIcon ("0002/GIF");
JLabel myLabel = new JLabel ("Selamat belajar JAVA", ikon,
SwingConstants.CENTER);
JButton myButton= new JButton ("SELESAI", ikon);
myButton.setToolTipText ("ini adalah Button");
myButton.setToolTipText ("ini adalah Label");
myButton.setLayout (new BorderLayout ());
myFrame.add(myLabel, "South");
myFrame.add(myButton, "North");
myFrame.setSize(500,500);
myFrame.setVisible(true);
myFrame.setDefaultCloseOperation (JFrame.EXIT_ON_CLOSE);
}
}
|
ouputnya
2. Membuat program menggunakab JfileChooser
import javax.swing.*;
import javax.swing.filechooser.*;
import java.io.File;
public class ContohJFileChooser extends JFrame {
public static void main (String[] args) {
ContohJFileChooser apl = new ContohJFileChooser();
}
public ContohJFileChooser() {
setSize (400, 1500);
JFileChooser jfc =
new JFileChooser();
FileFilter filterDotJava = new Akhiran (".java", "Berkas*.java");
jfc.setFileFilter (filterDotJava);
int hasil = jfc.showOpenDialog(this);
if(hasil== JFileChooser.APPROVE_OPTION)
setTitle("Tes JFileChooser.File: " +
jfc.getSelectedFile().getName());
else
setTitle ("Tes JFileChooser. Batal memilih");
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setVisible(true);
}
}
class Akhiran extends FileFilter {
private String ekstensi;
private String keterangan;
public Akhiran (String suffix, String deskripsi) {
this.ekstensi = suffix;
this.keterangan = deskripsi;
}
public boolean accept (File f) {
if (f.isDirectory())
return true;
return f.getName().endsWith (ekstensi);
}
public String getDescription() {
return keterangan;
}
}
|
outputnya
3. Membuat program dengan menggunakan JtextArea, Jlist dan Jspinner
import javax.swing.*;
import javax.swing.event.*;
import java.awt.*;
class cthList extends JFrame {
JList daftar;
JTextArea tArea1, tArea2;
JPanel Panel1, Panel2, Panel3, Panel4;
JSpinner Spin;
String daftarBunga[] = {"Melati", "Mawar", "Krisan","Kenanga", "Cempaka", "Tulip", "Kamboja Jepang"};
public cthList(){
super ("Tes JList");
setSize (350, 300);
Spin = new JSpinner();
Spin.setValue(new Integer(10));
Panel1 = new JPanel();
Panel2 = new JPanel();
Panel3 = new JPanel();
Panel4 = new JPanel();
daftar = new JList(daftarBunga);
daftar.setSelectedIndex(0);
tArea1 = new JTextArea ("",3, 15);
tArea1.setEditable (false);
tArea2 = new JTextArea ("",3, 15);
tArea2.setEditable (false);
setLayout (new BorderLayout());
add (Panel1, "Nourth");
add (Panel2, "West");
add (Panel3, "East");
add (Panel4, "South");
Panel1.add (daftar);
Panel2.add (daftar);
Panel3.add (daftar);
Panel4.add (daftar);
setDefaultCloseOperation (3);
setVisible(true);
daftar.addListSelectionListener(new ListSelectionListener()
{
public void valueChanged(ListSelectionEvent e) {
tArea1.setText("Yang terpilih: \n"+daftar.getSelectedValue());
}
}
);
Spin.addChangeListener(new ChangeListener() {
public void stateChanged(ChangeEvent e) {
tArea2.setText("Nilai : \n" +Spin.getValue());
}
}
);
}
}
public class ContohJList {
public static void main (String[] args){
cthList apl = new cthList() ;
}
}
|
outputnya
4. Membuat program dengan menggunakan JprogressBar
import javax.swing.event.*;
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
class CthJProgressBar extends JFrame implements ActionListener{
public final static int SELANG_WAKTU_TUNGGU = 1;
public final static int MAKS = 1000;
JProgressBar pb;
JButton b;
Timer timer;
int posisi = 0;
public CthJProgressBar(){
super("Tes JProgressBar");
setSize(300, 120);
pb = new JProgressBar(0, MAKS);
b = new JButton("Mulai");
JPanel p = new JPanel();
p.add(b);
setLayout(new BorderLayout());
add("North", p);
add("South", pb);
// -- Set Timer
timer = new Timer(SELANG_WAKTU_TUNGGU, new ActionListener(){
public void actionPerformed(ActionEvent evt){
posisi++;
pb.setValue(posisi);
if(posisi == MAKS){
timer.stop();
b.setText("Mulai");
}
}
});
b.addActionListener(this);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setVisible(true);
}
public void actionPerformed(ActionEvent e){
String s = e.getActionCommand();
if(s.equals("Mulai")){
b.setText("Stop");
posisi = 0;
pb.setValue(posisi);
timer.start();
}
else {
b.setText("Mulai");
timer.stop();
}
}
}
public class ContohJProgressBar {
public static void main(String[] args){
CthJProgressBar apl = new CthJProgressBar();
}
}
|
outputnya
5. Membuat program dengan menggunakan Jtable
import javax.swing.*;
import java.awt.*;
public class ContohJTable extends JFrame {
public static void main(String[]args) {
ContohJTable apl = new ContohJTable();
}
public ContohJTable(){
super("Tes JTable");
setSize(500,150);
Object[] []data = {
{"11234", "Asri Damayanti", "Akunting", new Long (2200000)},
{"11235", "Eritria", "Pemasaran", new Long(1200000)},
{"11236","Satria", "Personalia", new Long(1200000)},
{"11237", "Tri Setyowati", "EDP", new Integer (1500000)},
{"11238", "Fahmi Basya", "Akunting", new Long(125000000)},
{"11239", "Suadi Marwan", "Akunting", new Long(10000000)},
{"1123540", "Rani Ardini", "Pemasaran", new Long(1100000)},
{"11241", "Listya", "Pemasaran", new Long(1100000)},
};
String[] judulKolom = {"NIP", "Nama", "Bagian", "Gaji"};
JTable tabel = new JTable(data, judulKolom);
JScrollPane scrollPane = new JScrollPane(tabel);
add(scrollPane);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setVisible(true);
}
}
|
outputnya
import javax.swing.*;
import javax.swing.tree.*;
import javax.swing.event.*;
public class ContohJTree extends JFrame {
public static void main(String[] args) {
ContohJTree apl = new ContohJTree();
}
public ContohJTree() {
super("Tes JTable");
setSize(400, 400);
// --- Buat akar - Level 0
DefaultMutableTreeNode akar = new
DefaultMutableTreeNode("Benua");
//--- Level 1
DefaultMutableTreeNode afrika = new
DefaultMutableTreeNode("Afrika");
DefaultMutableTreeNode asia = new
DefaultMutableTreeNode("Asia");
DefaultMutableTreeNode amerika = new
DefaultMutableTreeNode("Amerika");
DefaultMutableTreeNode eropa = new
DefaultMutableTreeNode("Eropa");
DefaultMutableTreeNode mesir = new
DefaultMutableTreeNode("Mesir");
DefaultMutableTreeNode libya = new
DefaultMutableTreeNode("Libya");
DefaultMutableTreeNode indonesia = new
DefaultMutableTreeNode("Indonesia");
DefaultMutableTreeNode jepang = new
DefaultMutableTreeNode("Jepang");
DefaultMutableTreeNode malaysia = new
DefaultMutableTreeNode("Malayia");
DefaultMutableTreeNode kanada = new
DefaultMutableTreeNode("Kanada");
DefaultMutableTreeNode peru = new
DefaultMutableTreeNode("Peru");
DefaultMutableTreeNode bolivia = new
DefaultMutableTreeNode("Bolivia");
DefaultMutableTreeNode brazilia = new
DefaultMutableTreeNode("Brazilia");
DefaultMutableTreeNode austria = new
DefaultMutableTreeNode("Austria");
DefaultMutableTreeNode jerman = new
DefaultMutableTreeNode("Jerman");
// --- Membuat JTree
JTree struktur = new JTree (akar);
add(struktur);
akar.add(afrika);
akar.add(asia);
afrika.add(amerika);
afrika.add(eropa);
asia.add(mesir);
asia.add(libya);
asia.add(indonesia);
asia.add(jepang);
asia.add(malaysia);
amerika.add(kanada);
amerika.add(peru);
amerika.add(bolivia);
amerika.add(brazilia);
eropa.add(austria);
eropa.add(jerman);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
// --- Tampilkan Frame
setVisible(true);
}
}
|
outputnya





Komentar
Posting Komentar