Введение в JColorChooser
JColorChooser предлагает панель управления, которая позволяет пользователю выбирать цвет в формате RedGreenBlue (RGB). Панель управления состоит из двух частей, одна из которых представляет собой панель с вкладками для выбора цветов, а другая - окно предварительного просмотра. В программе выбора цвета присутствуют пять селекторов цвета.
Они есть :
- Образцы : выбор цвета из образцов.
- HSV : для выбора цвета с использованием цветового представления Hue-Saturation-Value
- HSL : чтобы выбрать цвет, используя цветовое представление Hue-Saturation-Lightness.
- RGB : для выбора цвета с использованием красно-зелено-синей цветовой модели.
- CMYK : для выбора цвета с использованием цвета процесса или четырехцветной модели.
JColorChooser наследует класс JComponent. Синтаксис, различные конструкторы, методы JColorChooser обсуждаются в следующих разделах.
Синтаксис:
Синтаксис JColorChooser является
public class JColorChooser extends JComponent implements Accessible
Ниже приведены четыре поля класса JLabel:
- accessibleContext
- CHOOSER_PANELS_PROPERTY
- PREVIEW_PANEL_PROPERTY
- SELECTION_MODEL_PROPERTY
Конструктор JColorChooser
Ниже приведены конструкторы JColorChooser. Поскольку они различаются в зависимости от передаваемых параметров, они используются в разных условиях.
- JColorChooser (): панель выбора цвета создается с белым цветом по умолчанию.
- JColorChooser (Color col): Панель выбора цвета создается с указанным начальным цветом col.
- JColorChooser (ColorSelectionModel m): панель выбора цвета создается с упомянутой ColorSelectionModel.
Методы JColorChooser
Ниже приведены наиболее часто используемые методы в JColorChooser.
- addChooserPanel ()
- CreateDialog ()
- SetColor
- getAccessibleContext ()
- setColor (int r, int g, int b)
- getChooserPanels ()
- ShowDialog ()
- GetColor ()
- setSelectionModel (мод ColorSelectionModel)
- getDragEnabled ()
- setDragEnabled ()
- setPreviewPanel (JComponent pr)
- getPreviewPanel ()
- getSelectionModel ()
- getUI ()
- Защищенная строка paramString ()
- setUI ()
- updateUI ()
Теперь давайте рассмотрим каждый из них подробно.
-
addChooserPanel (AbstractColorChooserPanel p)
Панель выбора цвета будет добавлена в окно выбора цвета.
-
JDialog createDialog (Компонентный компоновщик, строковый заголовок, логический модал, JColorChooser Cpane, ActionListener okListener, ActionListener cancelListener)
Будет создано новое диалоговое окно, которое вернет упомянутую панель ColorChooser с кнопками «Отмена», «Сброс» и «ОК». Если пользователь нажимает кнопки «ОК» или «Отмена», диалоговое окно будет автоматически скрыто. Но это не будет утилизировано в этом случае. Если пользователь нажмет кнопку «Сброс», цвет будет установлен на последний цвет, когда функция show () была вызвана в последний раз. Параметры включают в себя родительский компонент диалогового окна, имя заголовка для диалогового окна, логическое значение, в котором остаток программы неактивен до закрытия диалога, панель выбора цвета, прослушиватель действий Ok и прослушиватель действий отмены.
-
setColor (Color col)
Существующий цвет средства выбора цвета будет установлен на упомянутый цвет.
-
AccessibleContext getAccessibleContext ()
Возвращает AccessibleContext, связанный с JColorChooser.
-
setColor (int r, int g, int b)
Существующий цвет средства выбора цвета будет установлен на упомянутый цвет RGB (красный, зеленый, синий). Значения красного, зеленого и синего цвета должны быть между значениями от 0 до 255 (включительно). В параметрах r означает количество красного, g означает количество зеленого и b означает количество синего.
-
AbstractColorChooserPanel () getChooserPanels ()
Упомянутые цветные панели будут возвращены.
-
showDialog (Компонент comp, String t, Color init_Col)
Выбор цвета будет отображаться и блокироваться, пока диалог не будет скрыт. т.е. если нажата кнопка ОК, тогда этот метод удаляет или скрывает диалоговое окно, и выбранный цвет будет возвращен. Если нажата кнопка «Отмена» или нажата кнопка «Закрыть» без выбора цвета, возвращается значение «ноль». Параметры включают в себя родительский компонент диалогового окна, заголовок диалогового окна и исходный цвет, который устанавливается при отображении средства выбора цвета.
-
Цвет getColor ()
Возвращает существующее значение цвета из средства выбора цвета.
-
setSelectionModel (мод ColorSelectionModel)
Модель с указанным цветом будет установлена.
-
логическое значение getDragEnabled ()
Значение свойства dragEnabled будет возвращено.
-
setDragEnabled ()
Этот метод помогает в установке свойства dragEnabled, которое включает автоматическую обработку перетаскивания, устанавливая значение как true. Значение по умолчанию свойства dragEnabled - false. Параметр перетаскивания начнется в разделе «Взгляд и ощущения», когда пользователь наводит курсор мыши на панель.
-
setPreviewPanel (JComponent pr)
Текущая панель предварительного просмотра будет установлена.
-
getPreviewPanel ()
Панель предварительного просмотра с выбранным цветом будет возвращена.
-
getSelectionModel ()
Модель данных, которая управляет цветом, будет возвращена.
-
getUI ()
L & F объект, который визуализирует компонент, будет возвращен.
-
Защищенная строка paramString ()
Строковое представление JColorChooser будет возвращено.
-
setUI ()
L & F объект, который визуализирует компонент, будет установлен.
-
updateUI ()
Уведомление об изменении L & F будет инициировано UIManager.
Программа для реализации JColorChooser
Теперь давайте посмотрим на программу для реализации Java JColorChooser. Несколько методов и конструкторов, которые обсуждаются в вышеприведенных разделах, также реализованы в данной программе
Код :
//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);
)
)
Выход:
Когда вы нажимаете на эту кнопку, появляется следующее окно.
После выбора цвета появится экран, как показано ниже.
Вывод
JcolorChooser помогает предлагать панель управления, которая, как считается, позволяет пользователю выбирать цвет в красном, зеленом и синем (RGB) формате как часть цели дизайна. Как уже обсуждалось, созданная панель управления будет состоять из двух частей, одна из которых представляет собой панель с вкладками, а другая - окно предварительного просмотра.
Рекомендуемые статьи
Это руководство по JColorChooser. Здесь мы обсуждаем конструкторы и методы вместе с его программой для реализации JColorChooser. Вы также можете посмотреть следующие статьи, чтобы узнать больше
- Конструктор в Java
- 3D-массивы в Java
- BorderLayout в Java
- StringBuffer в Java
- JFrame в Java
- 3D-массивы в C ++
- JLabel на Java
- Flowlayout в Java