Introducción a JColorChooser
JColorChooser ofrece un panel de control que está diseñado para permitir al usuario elegir un color en formato RedGreenBlue (RGB). El panel de control tiene dos partes donde una parte es un panel con pestañas para seleccionar colores y la otra es el cuadro de vista previa. En el selector de color, están presentes cinco selectores de color.
Son :
- Muestras : para seleccionar el color de las muestras.
- HSV : para seleccionar el color usando la representación de color de tono-saturación-valor
- HSL : para seleccionar el color utilizando la representación de color Tono-Saturación-Luminosidad.
- RGB : para seleccionar el color con el modelo de color rojo-verde-azul.
- CMYK : para seleccionar el color utilizando el color de proceso o el modelo de cuatro colores.
JColorChooser hereda la clase JComponent. La sintaxis, los diferentes constructores, los métodos de JColorChooser se analizan en las siguientes secciones.
Sintaxis:
La sintaxis de JColorChooser es
public class JColorChooser extends JComponent implements Accessible
Los siguientes son los cuatro campos de la clase JLabel:
- accesibleContext
- CHOOSER_PANELS_PROPERTY
- PREVIEW_PANEL_PROPERTY
- SELECTION_MODEL_PROPERTY
Constructor JColorChooser
Los siguientes son los constructores de JColorChooser. Como son diferentes según los parámetros pasados, se usan en diferentes condiciones.
- JColorChooser (): se crea un panel de selección de color con un color blanco predeterminado.
- JColorChooser (Color col): se crea un panel de selección de color con el color inicial mencionado.
- JColorChooser (ColorSelectionModel m): se crea un panel de selección de color con el mencionado ColorSelectionModel.
Métodos JColorChooser
Los siguientes son los métodos comúnmente utilizados en JColorChooser.
- addChooserPanel ()
- createDialog ()
- setColor
- getAccessibleContext ()
- setColor (int r, int g, int b)
- getChooserPanels ()
- showDialog ()
- getColor ()
- setSelectionModel (mod ColorSelectionModel)
- getDragEnabled ()
- setDragEnabled ()
- setPreviewPanel (JComponent pr)
- getPreviewPanel ()
- getSelectionModel ()
- getUI ()
- String protegido paramString ()
- setUI ()
- updateUI ()
Ahora, echemos un vistazo a cada uno de ellos en detalle.
-
addChooserPanel (AbstractColorChooserPanel p)
Se agregará un panel de selección de color al selector de color.
-
JDialog createDialog (Componente comp, Título de cadena, modal booleano, JColorChooser Cpane, ActionListener okListener, ActionListener cancelListener)
Se creará un nuevo cuadro de diálogo y devolverá el panel ColorChooser mencionado con los botones Cancelar, Restablecer y Aceptar. Si el usuario presiona los botones Aceptar o Cancelar, el cuadro de diálogo se ocultará automáticamente. Pero no se eliminará en ese caso. Si el usuario presiona el botón Restablecer, el color se establecerá en el último color cuando se llamó a show () la última vez. Los parámetros incluyen el componente principal del cuadro de diálogo, el nombre del título para el cuadro de diálogo, un valor booleano donde el resto del programa está inactivo hasta que se cierra el cuadro de diálogo, el panel selector de color, la escucha de acción Ok y la escucha de acción Cancelar.
-
setColor (Color col)
El color existente del selector de color se establecerá en el color mencionado.
-
AccessibleContext getAccessibleContext ()
Devuelve el AccessibleContext relacionado con JColorChooser.
-
setColor (int r, int g, int b)
El color existente del selector de color se establecerá en el color RGB (Rojo, Verde, Azul) mencionado. Los valores del color rojo, verde y azul deben estar entre los valores 0 y 255 (inclusive). En los parámetros, r implica la cantidad de rojo, g implica la cantidad de verde yb implica la cantidad de azul.
-
AbstractColorChooserPanel () getChooserPanels ()
Los paneles de color mencionados serán devueltos.
-
showDialog (Componente comp, Cadena t, Color init_Col)
Se mostrará un bloqueador de color y se bloqueará hasta que se oculte el cuadro de diálogo. es decir, si se presiona el botón Aceptar, este método elimina u oculta el cuadro de diálogo y se devolverá el color elegido. Si se presiona el botón Cancelar o se presiona cerrar sin seleccionar el color, se devolverá nulo. Los parámetros incluyen el componente principal del cuadro de diálogo, el título del cuadro de diálogo y el color inicial que se establece cuando se muestra el selector de color.
-
Color getColor ()
Devuelve el valor de color existente del selector de color.
-
setSelectionModel (mod ColorSelectionModel)
Se establecerá un modelo que contenga el color mencionado.
-
getDragEnabled () booleano
Se devolverá el valor de la propiedad dragEnabled.
-
setDragEnabled ()
Este método ayuda a establecer la propiedad dragEnabled, que permite el manejo automático de arrastre al establecer el valor como verdadero. El valor predeterminado de la propiedad dragEnabled es falso. Una opción de arrastrar y soltar comenzará en Look and Feel cuando el usuario pase el botón del mouse sobre el panel.
-
setPreviewPanel (JComponent pr)
Se configurará el panel de vista previa actual.
-
getPreviewPanel ()
Se devolverá el panel de vista previa con el color elegido.
-
getSelectionModel ()
Se devolverá el modelo de datos que gestiona el color.
-
getUI ()
Se devolverá el objeto L&F que representa el componente.
-
String protegido paramString ()
Se devolverá la representación de cadena de JColorChooser.
-
setUI ()
Se establecerá el objeto L&F que representa el componente.
-
updateUI ()
La notificación de cambio de L&F será activada por el UIManager.
Programa para implementar JColorChooser
Ahora, veamos el programa para implementar Java JColorChooser. Varios métodos y constructores que se analizan en las secciones anteriores también se implementan en el programa dado
Código :
//Java program to implement JColorChooser
//import all the packages that are needed to implement JColorChooser
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class JColorExample (
//declaration of labels, panels and frame
private JFrame mFrame;
private JLabel headerLbl;
private JLabel statusLbl;
private JPanel cntrlpnl;
//constructor of the class JColorExample
public JColorExample()(
GUIcreate(); //calls the function
)
//main method
public static void main(String() args)(
JColorExample md = new JColorExample(); //object of the class is created
md.ColorChooserPane();//calls the function
)
//function for Graphical User Interface creation
private void GUIcreate()(
mFrame = new JFrame("Example for Java JColorChooser");
mFrame.setSize(600, 600);//size of the frame is set
mFrame.setLayout(new GridLayout(3, 1)); //GridLayout is chosen as the layout for the frame
mFrame.addWindowListener(new WindowAdapter() (
public void windowClosing(WindowEvent windowEvent)(
System. exit (0);
)
));
//layout description
headerLbl = new JLabel("", JLabel.CENTER);
statusLbl = new JLabel("", JLabel.CENTER);
statusLbl.setSize(350, 100);
cntrlpnl = new JPanel();
cntrlpnl.setLayout(new FlowLayout());
mFrame.add(headerLbl);
mFrame.add(cntrlpnl);
mFrame.add(statusLbl);
mFrame.setVisible(true);
)
// function to display pane
private void ColorChooserPane()(
headerLbl.setText("Here it is: JColorChooser");
JButton chooseButton = new JButton("Choose the color to set as Background");
chooseButton.addActionListener(new ActionListener() (
public void actionPerformed(ActionEvent e) (
Color bg = JColorChooser. showDialog (mFrame,
"Choose background color", Color.white);
if(bg != null)(
cntrlpnl.setBackground(bg);
mFrame.getContentPane().setBackground(bg);
)
)
));
cntrlpnl.add(chooseButton);
mFrame.setVisible(true);
)
)
Salida:
Cuando hace clic en ese botón, aparece el siguiente cuadro.
Después de seleccionar el color, aparece una pantalla como se muestra a continuación.
Conclusión
JcolorChooser ayuda a ofrecer un panel de control que se considera que permite al usuario seleccionar un color en el formato Rojo, Verde, Azul (RGB) como parte del propósito del diseño. Como ya se discutió, el panel de control creado tendrá dos partes en las cuales una es un panel con pestañas y la otra es el cuadro de vista previa.
Artículos recomendados
Esta es una guía para JColorChooser. Aquí discutimos los constructores y métodos junto con su programa para implementar JColorChooser. También puede consultar los siguientes artículos para obtener más información.
- Constructor en Java
- Matrices 3D en Java
- BorderLayout en Java
- StringBuffer en Java
- JFrame en Java
- Matrices 3D en C ++
- JLabel en Java
- Flowlayout en Java