Sabtu, 19 Februari 2011

Buat JFrame baru dari JFrame lama


Assalamualaikum……. Wr.wb
Oke kali ni saya mau posting cara buat JFrame baru dri JFrame lama, ilmu ini saya dpt dri orang yg hebat di bidang java programming tp jframeny blm ada isinya apa2 nah kli ne Jframenya saya tambah biar ada isinya,,, oke langsung saja ke coding lengkapnya:
Untuk class Framenya:
package framebaru;

import java.awt.Container;
import java.awt.FlowLayout;
import java.awt.GridLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.BoxLayout;
import javax.swing.ButtonGroup;
import javax.swing.JButton;
import javax.swing.JComboBox;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.JRadioButton;
import javax.swing.JTextField;

/**
*
* @author tiwi
*/
public class Frame extends JFrame {

hasil h;
JLabel title, visible, setdefault, size, location, lx1, lx2, lnama;
JTextField tftitle, tfsize1, tfsize2, tfloc1, tfloc2, tftulisan, tfnama;
JRadioButton rbtrue, rbfalse;
JComboBox cbsetdef;
JButton bgenerate;
JPanel p1, p2, p3, p4, p5, p6, p7;

public Frame() {
initcom();
initlayout();
initaction();

}

private void initcom() {
title = new JLabel("Title");
visible = new JLabel("SetVisible");
setdefault = new JLabel("SetDefaultCloseOperation");
size = new JLabel("Size");
location = new JLabel("Location");
lx1 = new JLabel("X");
lx2 = new JLabel("X");
lnama = new JLabel("Nama");
tftitle = new JTextField(20);
tfsize1 = new JTextField(20);
tfsize2 = new JTextField(20);
tfloc1 = new JTextField(20);
tfloc2 = new JTextField(20);
tfnama = new JTextField(20);
rbtrue = new JRadioButton("true");
rbfalse = new JRadioButton("false");
ButtonGroup g = new ButtonGroup();
g.add(rbtrue);
g.add(rbfalse);
String bil[] = {"0", "1", "2", "3"};
cbsetdef = new JComboBox(bil);
bgenerate = new JButton("Generate");
p1 = new JPanel();
p2 = new JPanel();
p3 = new JPanel();
p4 = new JPanel();
p5 = new JPanel();
p6 = new JPanel();
p7 = new JPanel();

}

private void initlayout() {
Container c = getContentPane();
c.setLayout(new BoxLayout(c, BoxLayout.Y_AXIS));
c.add(p1);
c.add(p2);
c.add(p3);
c.add(p4);
c.add(p5);
c.add(p6);
c.add(p7);
p1.setLayout(new FlowLayout(FlowLayout.CENTER));
p1.add(title);
p1.add(tftitle);
p2.setLayout(new FlowLayout(FlowLayout.CENTER));
p2.add(visible);
p2.add(rbtrue);
p2.add(rbfalse);
p3.setLayout(new FlowLayout(FlowLayout.CENTER));
p3.add(setdefault);
p3.add(cbsetdef);
p4.setLayout(new FlowLayout(FlowLayout.CENTER));
p4.add(size);
p4.add(tfsize1);
p4.add(lx1);
p4.add(tfsize2);
p5.setLayout(new FlowLayout(FlowLayout.CENTER));
p5.add(location);
p5.add(tfloc1);
p5.add(lx2);
p5.add(tfloc2);
p6.setLayout(new FlowLayout(FlowLayout.CENTER));
p6.add(lnama);
p6.add(tfnama);
p7.setLayout(new FlowLayout(FlowLayout.CENTER));
p7.add(bgenerate);
setDefaultCloseOperation(EXIT_ON_CLOSE);
setVisible(true);
setLocationRelativeTo(null);
pack();
}

private void initaction() {
bgenerate.addActionListener(new ActionListener() {

public void actionPerformed(ActionEvent e) {
h = new hasil();
h.tnama.setText(tfnama.getText());
dispose();
}
});
}

class hasil extends JFrame {

JLabel tnama;
public hasil() {

try {
tnama = new JLabel("");
add(tnama);
setTitle(tftitle.getText());
int x = Integer.parseInt(tfsize1.getText());
int y = Integer.parseInt(tfsize2.getText());
setSize(x, y);
int a = Integer.parseInt(tfloc1.getText());
int b = Integer.parseInt(tfloc2.getText());
setLocation(a, b);

if (x == 0 && y == 0) {
JOptionPane.showMessageDialog(this, "Data Harus diisi", "Information", JOptionPane.INFORMATION_MESSAGE);
} else {
}
if (rbtrue.isSelected()) {

setVisible(true);
} else if (rbfalse.isSelected()) {
setVisible(false);
}
if (cbsetdef.getSelectedIndex() == 0) {
JOptionPane.showMessageDialog(this, "Tidak Boleh 0", "Information", JOptionPane.INFORMATION_MESSAGE);
} else if (cbsetdef.getSelectedIndex() == 1) {
setDefaultCloseOperation(1);
} else if (cbsetdef.getSelectedIndex() == 2) {
setDefaultCloseOperation(2);

} else if (cbsetdef.getSelectedIndex() == 3) {
setDefaultCloseOperation(3);
}

} catch (Exception ex) {
ex.printStackTrace();
}
}
}
}


Method mainya:
package framebaru;

import com.sun.java.swing.plaf.nimbus.NimbusLookAndFeel;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.swing.UIManager;
import javax.swing.UnsupportedLookAndFeelException;

/**
*
* @author tiwi
*/
public class Main {

/**
* @param args the command line arguments
*/
public static void main(String[] args) {
try {
// TODO code application logic here
UIManager.setLookAndFeel(new NimbusLookAndFeel());
new Frame().setVisible(true);
} catch (UnsupportedLookAndFeelException ex) {
Logger.getLogger(Main.class.getName()).log(Level.SEVERE, null, ex);
}

}
}
Saya juga menambahkan look and fell biar tampilanya lebih keren,….
Tampilanya:




Oke selamat mencoba ya,,,,,,,,!!!!!!
Wassalamu’alaikum Wr. Wb.

Tidak ada komentar:

Posting Komentar