Изменение панели выбора цвета

Я создаю средство выбора цвета, и мне нужно изменить одну из панелей выбора цвета.

Выбор цвета

Что я хотел, так это то, что я хотел ввести входные значения через поля RGB, чтобы установить цвет. Проблема в том, что значения RGB, кажется, отключены. Есть ли в API метод включения входов RGB для получения значения?

1 ответ

Решение

Кажется, хорошо здесь.

Тест выбора цвета

import javax.swing.*;

class ColorChooserTest {

    public static void main(String[] args) {
        SwingUtilities.invokeLater(new Runnable() {
            public void run() {
                JOptionPane.showMessageDialog(null, new JColorChooser());
            }
        });
    }
}

Можно ли как-нибудь совместить панель ползунка RGB и панель HSB?

Да, по-видимому, это возможно. Проверьте этот (очень хрупкий, плохо выложенный) пример.

Тест выбора цвета 2

import java.awt.*;
import javax.swing.*;
import javax.swing.colorchooser.*;
import javax.swing.border.*;

class ColorChooserTest2 {

    public static void main(String[] args) {
        SwingUtilities.invokeLater(new Runnable() {
            public void run() {
                JColorChooser cc = new JColorChooser();
                AbstractColorChooserPanel[] panels = cc.getChooserPanels();

                JPanel p = new JPanel();
                panels[1].setBorder(
                    new TitledBorder(panels[1].getDisplayName()));
                p.add(panels[1]);

                panels[2].setBorder(
                    new TitledBorder(panels[2].getDisplayName()));
                p.add(panels[2]);

                JPanel gui = new JPanel(new BorderLayout(2,2));
                gui.add(p, BorderLayout.CENTER);

                gui.add(cc.getPreviewPanel(), BorderLayout.SOUTH);

                JOptionPane.showMessageDialog(null, gui);
            }
        });
    }
}
Другие вопросы по тегам