Como colocar um menu de cores: Usando o JColorChooser

Sabe aquelas opções de cores, transparência, tom, brilho etc, que você vê em programas de imagens por aí?

Pois é, bote no seu aplicativo Java também.
Mas calma, é bem simples. Já está tudo pronto, e o nome disso é JColorChooser.

Objetos Graphics contém os métodos para desenhar, manipular fontes, cores e outras coisas gráficas.
É uma classe abstrata, ou seja, não pode ser instanciada, isso por conta da portabilidade, já que cada dispositivo desenha de seu próprio jeito.

Para usar a Graphics, adicionamos:
import java.awt.Graphics;

Para inserirmos componentes gráficas, como linhas, retângulos etc, usamos uma instância da Graphics:

public void paintComponent( Graphics g)
{
    //aqui os métodos para desenho
}


As cores são formadas por três níveis de cores, vermelho(R, red), verde(G, green) e azul(B, blue).
O famoso RGB.

Para usarmos as cores, adicionamos:
import java.awt.Color;

public Color(int r, int g, int b): inteiros variando de 0 a 255
public Color(float r, float g, float b): float de 0.0 a 1.0

- Mais métodos

public int getRed() ;
public int getGreen();
public int getBlue();

public Color getColor();
public void setColor( Color c);



Vamos mostrar uma aplicação que mostra o JColorChooser, uma componente GUI que exibe todo o padrão de cores no JColorChosser dialog.
Quando escolhemos uma cor, a JPanel muda de cor.



----------------ColorsFrame.java


import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JColorChooser;
import javax.swing.JPanel;

public class ShowColors2JFrame extends JFrame
{
    private JButton changeColorJButton;
    private Color color = Color.LIGHT_GRAY;
    private JPanel colorJPanel;
   
    public ShowColors2JFrame()
    {
        super( "Usando o JColorChooser" );
       
        colorJPanel = new JPanel();
        colorJPanel.setBackground( color );
       
        changeColorJButton = new JButton( "Escolher a cor" );
        changeColorJButton.addActionListener(
                new ActionListener()
                {
                    public void actionPerformed( ActionEvent event )
                    {
                        color = JColorChooser.showDialog(
                                ShowColors2JFrame.this, "Escolher a color", color );
                       
                        if( color == null )
                            color = Color.LIGHT_GRAY;
                        colorJPanel.setBackground( color );
                    }
                }
                );
       
        add( colorJPanel, BorderLayout.CENTER );
        add( changeColorJButton, BorderLayout.SOUTH );
       
        setSize( 400, 130 );
        setVisible( true );
    }
}

----------------Colors.java
import javax.swing.JFrame;

public class Colors
{
    public static void main(String[] args)
    {
        ColorsFrame application = new ColorsFrame();
        application.setDefaultCloseOperation( JFrame.EXIT_ON_CLOSE );
    }
}

O resultado:









Dicas e Novidades de Java por e-mail

Sabe quanto custa um bom livro de java?
Entre R$ 100,00 e R$300,00

Sabe quanto custa um bom curso presencial de Java?
Entre R$ 1.500,00 até R$ 4.000,00

Sabe quanto custa estudar pelo Java Progressivo?
Absolutamente nada.

Porém, também precisamos de sua ajuda e apoio.
Para isso, basta curtir nossa Fan Page e clicar no botão G+ do Google.