Kamis, 26 April 2012

Swing Make Over (Button)

Hai .. di sini kita akan membahas tentang memanipulasi JButton pada java mengunakan Swing Makeover. kita bisa memanipulasi JButton menjadi seperti ini :


Tapi disini tidak semua cara memanipulasi JButton di atas di bahas disini , hanya JButton yang pertama yang akan di bahas di sini . karena kodenya yang paling SIMPLE. hehehehehe .. 
oke ! . ini kode source nya . 



import java.awt.Color;
import java.awt.GradientPaint;
import java.awt.Graphics;
import java.awt.Graphics2D;
import java.awt.RenderingHints;
import javax.swing.ButtonModel;
import javax.swing.JButton;
public class ButtonMakeOver extends JButton {
    public ButtonMakeOver(String text) {
   setText(text);
        setBorderPainted(false);
        setContentAreaFilled(false);
        setFocusPainted(false);
        setOpaque(false);
        setForeground(Color.white);
    }
    @Override
    protected void paintComponent(Graphics g) {
        ButtonModel buttonModel = getModel();
        Graphics2D gd = (Graphics2D) g.create();
                gd.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON);
                gd.setPaint(new   GradientPaint(0,   0,   Color.white,   0, getHeight(), new Color(0, 0, 0, 0)));
        if (buttonModel.isRollover()) {
            gd.setPaint(new GradientPaint(0, 0, new Color(0, 0, 0, 0), 0, getHeight(), Color.white));
            if (buttonModel.isPressed()) {
                gd.setPaint(new GradientPaint(0, 0, Color.white, 0, getHeight(), Color.white));
                setForeground(Color.BLACK);
            } else {
                setForeground(Color.white);
            }
        }
        gd.fillRoundRect(0, 0, getWidth(), getHeight(), 25, 25);
        gd.dispose();
        super.paintComponent(g);
    }
}



untuk melihat apakah JButton sudah terlihat seperti gambar di atas, MONGGO di tulis source kode berikut ini (Test.Java) :


import java.awt.BorderLayout;
import java.awt.Color;
import javax.swing.JFrame;
import javax.swing.JPanel;
public class Test extends JFrame {
    private ButtonMakeOver button =new ButtonMakeOver("My Button");
    private JPanel panel;
    public Test() {
        panel = new JPanel(null);
        panel.setBackground(Color.BLACK);
        panel.add(button);
        button.setBounds(20, 20, 120, 23);
        setLayout(new BorderLayout());
        add(panel, BorderLayout.CENTER);
        setSize(200,100);
        setDefaultCloseOperation(EXIT_ON_CLOSE);
    }
    public static void main(String[] args) {
        new Test().setVisible(true);
    }
}


Setelah di run maka tampilan Buttonnya akan seperti berikut ini : [ :D ]




Tertarik kan !!! ayo cepetan di coba . :D

referensi:  :

0 komentar:

Posting Komentar

Share

Twitter Delicious Facebook Digg Stumbleupon Favorites