JFrame com fundo degradê

Postado por Ugleiton Carneiro dia 3 de setembro de 2010 as 11:17

Crie a Classe BasicPanelUI

package look;

import java.awt.Color;
import java.awt.Dimension;
import java.awt.GradientPaint;
import java.awt.Graphics;
import java.awt.Graphics2D;
import javax.swing.JComponent;
import javax.swing.JPanel;
import javax.swing.plaf.basic.BasicPanelUI;

/**
 *
 * @author Ugleiton
 */
public class PanelFormUICinza extends BasicPanelUI {

    private Color corInicial = new Color(241, 241, 241);
    private Color corFinal = new Color(235, 235, 235);
    
    @Override
    protected void installDefaults(JPanel p) {
        p.setOpaque(true);
    }

    @Override
    public void paint(Graphics g, JComponent c) {
        Graphics2D g2 = (Graphics2D) g;

        Dimension vSize = c.getSize();

        int h = vSize.height;
        int w = vSize.width;

        g2.fillRect(0, 0, w, h);

        g2.setPaint(new GradientPaint(0, 0, corInicial, 0, h, corFinal));
        g2.fillRect(3, 0, w - 4, h - 2);

    }
}


Depois sete o UI no panel

jPanel.setUI(new PanelFormUICinza());

1 comentários:

Anônimo disse...

Cara, ficou muito legal esse código, gostei bastante... Parabéns

Postar um comentário

Marcadores

Computação (8) Java (7) Excel (2) Humor (2) NetBeans (2) Textos (2) Curiosidades (1) IRPF (1) Musicas (1)