JColorChooser - A JColorChoose kivitelezői és megvalósítási módszerei

Tartalomjegyzék:

Anonim

Bevezetés a JColorChooser programba

A JColorChooser olyan vezérlőpanelt kínál, amelynek célja, hogy a felhasználó választhasson színt RedGreenBlue (RGB) formátumban. A központ két részből áll, ahol az egyik egy füllel ellátott ablaktábla a színek kiválasztásához, a másik az előnézeti mező. A színválasztóban öt színválasztó van jelen.

Ők :

  • Színtárak : A szín kiválasztása a színminták közül.
  • HSV : A szín kiválasztása a Hue-Saturation-Value színreprezentációval
  • HSL : A szín kiválasztása a Hue-Saturation-Lightness színreprezentációval.
  • RGB : A szín kiválasztása a Vörös-Zöld-Kék színmodell segítségével.
  • CMYK : A szín kiválasztása a feldolgozási szín vagy a négy színmodell segítségével.

A JColorChooser a JComponent osztályt örököli. A JColorChooser szintaxisát, különféle konstruktorait és módszereit a következő szakaszokban tárgyaljuk.

Szintaxis:

A JColorChooser szintaxisa

public class JColorChooser extends JComponent implements Accessible

Az alábbiakban bemutatjuk a JLabel osztály négy mezőjét:

  1. accessibleContext
  2. CHOOSER_PANELS_PROPERTY
  3. PREVIEW_PANEL_PROPERTY
  4. SELECTION_MODEL_PROPERTY

JColorChooser konstruktor

Az alábbiakban bemutatjuk a JColorChooser építőit. Mivel az átadott paraméterektől függően különböznek, ezért különböző körülmények között használják őket.

  • JColorChooser (): A színválasztó ablakot az alapértelmezett fehér szín hozza létre.
  • JColorChooser (Színoszlop): Színválasztó ablaktábla jön létre az említett kezdeti színoszlop segítségével.
  • JColorChooser (ColorSelectionModel m): Színválasztó ablaktábla jön létre az említett ColorSelectionModel segítségével.

JColorChooser Methods

Az alábbiakban ismertetjük a JColorChooser által leggyakrabban használt módszereket.

  • addChooserPanel ()
  • createDialog ()
  • SetColor
  • getAccessibleContext ()
  • setColor (int r, int g, int b)
  • getChooserPanels ()
  • showDialog ()
  • getColor ()
  • setSelectionModel (ColorSelectionModel mod)
  • getDragEnabled ()
  • setDragEnabled ()
  • setPreviewPanel (JComponent pr)
  • getPreviewPanel ()
  • getSelectionModel ()
  • getUI ()
  • védett karakterlánc paramString ()
  • setUI ()
  • updateUI ()

Most nézzük meg mindegyiket részletesen.

  • addChooserPanel (AbstractColorChooserPanel p)

A színválasztó panel hozzáadódik a színválasztóhoz.

  • JDialog createDialog (Component comp, String cím, logikai modál, JColorChooser Cpane, ActionListener okListener, ActionListener CancelListener)

Létrejön egy új párbeszédpanel, amely visszaadja az említett ColorChooser ablakot a Mégse, a Visszaállítás és az OK gombokkal. Ha a felhasználó megnyomja az OK vagy a Mégse gombot, akkor a párbeszédpanel automatikusan elrejtésre kerül. De ebben az esetben nem fogják megsemmisíteni. Ha a Reset gombot megnyomja a felhasználó, akkor a szín az utolsó színre lesz állítva, amikor a show () utoljára hívta. A paraméterek között szerepel a párbeszédpanel szülő összetevője, a párbeszédpanel címe, egy logikai érték, ahol a programmaradék aktív marad a párbeszéd bezárásáig, a colorchooser ablaktábla, az Ok művelet figyelő és a Művelet figyelő törlése.

  • setColor (színes col)

A színválasztó meglévő színét az említett színre állítja.

  • AccessibleContext getAccessibleContext ()

Visszaadja a JColorChooserhez kapcsolódó AccessibleContext szöveget.

  • setColor (int r, int g, int b)

A színválasztó meglévő színét az említett RGB (piros, zöld, kék) színre állítja. A vörös, a zöld és a kék szín értékeinek 0 és 255 (köztük) értékek között kell lennie. A paraméterekben r jelöli a vörös mennyiségét, g jelzi a zöld mennyiségét és b jelenti a kék mennyiségét.

  • AbstractColorChooserPanel () getChooserPanels ()

Az említett színes panelek visszaadódnak.

  • showDialog (Component comp, karakterlánc t, színes init_Col)

A színválasztó megjelenik és blokkolva lesz, amíg a párbeszédpanel nem rejtőzik. Vagyis ha megnyomja az OK gombot, akkor ez a módszer eltávolítja vagy elrejti a párbeszédpanelt, és a kiválasztott szín visszatér. Ha megnyomja a Mégse gombot, vagy bezárja a szín kiválasztása nélkül, akkor a null érték jelenik meg. A paraméterek tartalmazzák a párbeszédpanel szülő összetevőjét, a párbeszédpanel címét és a színválasztó megjelenésekor beállított kezdeti színt.

  • Színes getColor ()

Visszaadja a meglévő színértéket a színválasztóból.

  • setSelectionModel (ColorSelectionModel mod)

Beállítják az említett színt tartalmazó modellt.

  • logikai getDragEnabled ()

A dragEnabled tulajdonság értéke visszatér.

  • setDragEnabled ()

Ez a módszer segíti a dragEnabled tulajdonság beállítását, amely lehetővé teszi az automatikus húzáskezelést az érték valódi értékként történő beállításával. A dragEnabled tulajdonság alapértelmezett értéke hamis. A drag and drop opció a Look and Feel elemben kezdődik, amikor a felhasználó az egérgombot a panel fölé viszi.

  • setPreviewPanel (JComponent pr)

Beállítja az aktuális előnézeti panelt.

  • getPreviewPanel ()

A kiválasztott színű előnézeti panel visszatér.

  • getSelectionModel ()

A szín, amely kezeli a színt, visszatér.

  • getUI ()

Az összetevőt megjelenítő L&F objektum visszaadásra kerül.

  • védett karakterlánc paramString ()

A JColorChooser karakterlánc-ábrázolása visszatér.

  • setUI ()

Az összetevőt megjelenítő L&F objektum be lesz állítva.

  • updateUI ()

Az L&F értesítést az UIManager indítja el.

Program a JColorChooser megvalósításához

Most nézzük meg a Java JColorChooser megvalósításához szükséges programot. Számos módszer és konstruktor, amelyeket a fenti szakaszokban tárgyalunk, szintén megvalósul az adott programban

Kód :

//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);
)
)

Kimenet:

Ha rákattint a gombra, a következő mező jelenik meg.

A szín kiválasztása után megjelenik az alábbi képernyő.

Következtetés

A JcolorChooser segít egy olyan vezérlőpanel felkínálásában, amelyet úgy vélik, hogy lehetővé teszi a felhasználó számára a vörös, zöld, kék (RGB) formátum színének kiválasztását a tervezési cél részeként. Mint már említettük, a létrehozott vezérlőpanel két részből áll, amelyekben az egyik egy füllel ellátott ablaktábla, a másik pedig az előnézeti mező.

Ajánlott cikkek

Ez egy útmutató a JColorChooser-hez. Itt a konstruktorokat és a módszereket tárgyaljuk, valamint a JColorChooser megvalósítását célzó programját. A következő cikkeket is megnézheti további információkért -

  1. Kivitelező Java-ban
  2. 3D tömbök Java-ban
  3. BorderLayout Java-ban
  4. StringBuffer Java-ban
  5. JFrame Java
  6. 3D tömbök C ++ formátumban
  7. JLabel Java
  8. Flowlayout Java