Java - JColorChooser


Klasa JColorChooser se koristi za kreiranje dijaloškog okvira za biranje boja tako da korisnik može odabrati bilo koju boju. Nasljeđuje JComponent klasa. Pogledajmo deklaraciju za klasu javax.swing.JColorChooser:

public class JColorChooser extends JComponent implements Accessible  


Najčešće korišteni konstruktori

Konstruktor Opis
JColorChooser() Koristi se za kreiranje panela za odabir boja u početku je to bijela boje.
JColorChooser(color initialcolor) Koristi se za kreiranje panela za biranje boja sa inicijalno navedenom bojom.


Najčešće korištene metode

Metod Opis
void addChooserPanel(AbstractColorChooserPanel panel) Koristi se za dodavanje panela za biranje boja u birač boja.
static Color showDialog(Component c, String title, Color initialColor) Koristi se za prikaz dijaloškog okvira za odabir boja.


Primjer Java JColorChooser

import java.awt.event.*;    
import java.awt.*;    
import javax.swing.*;  

public class Main extends JFrame implements ActionListener {    
    JButton b;    
    Container c;    
    Main(){    
        // Kriranje dugmeta koji će da prikazuje palete boja 
        c = getContentPane();    
        c.setLayout(new FlowLayout());         
        b = new JButton("Odaberi boju");    
        b.addActionListener(this);         
        c.add(b);    
    }    
    // Postavljanje crvene kao prve boje za odabir
    public void actionPerformed(ActionEvent e) {    
        Color initialcolor = Color.RED;    
        Color color = JColorChooser.showDialog(this,"Odaberi željenu boju", initialcolor);    
        c.setBackground(color);    
    }    
    // Metoda Main koja sadrži Formu za odabir željene boje
    public static void main(String[] args) {    
        Main ch=new Main();    
        ch.setSize(400,400);    
        ch.setVisible(true);    
        ch.setDefaultCloseOperation(EXIT_ON_CLOSE);    
    }    
} 

Prikaz koda iz gornjeg primjera izgledaće ovako:



Primjer Java JColorChooser sa ActionListener

import javax.swing.*;  
import java.awt.*;  
import java.awt.event.*;  

public class Main extends JFrame implements ActionListener{  
    JFrame f;  
    JButton b;  
    JTextArea ta; 
    
    Main(){  
        f = new JFrame("Primjer palete za odabir boje");  
        b = new JButton("Odaberi boju");  
        b.setBounds(168,250,140,30); 
        
        ta = new JTextArea();  
        ta.setBounds(10,10,300,200);  
        b.addActionListener(this); 
        
        f.add(b);f.add(ta);  
        f.setLayout(null);  
        f.setSize(400,400);  
        f.setVisible(true);
        f.setDefaultCloseOperation(EXIT_ON_CLOSE);
    }  
    public void actionPerformed(ActionEvent e){  
        Color c=JColorChooser.showDialog(this,"Odaberi",Color.CYAN);  
        ta.setBackground(c);  
    }  
    public static void main(String[] args) {  
        new Main();  
    }  
}

Prikaz koda iz gornjeg primjera izgledaće ovako: