import javax.swing.*; import java.awt.Color; import java.awt.BorderLayout; import javax.swing.event.*; import java.awt.event.*; public class JColorChooserTest2 extends JFrame implements ChangeListener, ActionListener{ JColorChooser colorchooser; JLabel colorLabel; JTextField redText = new JTextField("", 2); JTextField greenText = new JTextField("", 2); JTextField blueText = new JTextField("", 2); public static void main(String[] args){ JColorChooserTest2 frame = new JColorChooserTest2(); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.setBounds(10, 10, 450, 400); frame.setTitle("タイトル"); frame.setVisible(true); } JColorChooserTest2(){ colorLabel = new JLabel("選択した色が背景色として表示されます"); colorLabel.setOpaque(true); colorchooser = new JColorChooser(Color.GREEN); colorchooser.getSelectionModel().addChangeListener(this); JPanel selectPanel = new JPanel(); redText = new JTextField("", 2); greenText = new JTextField("", 2); blueText = new JTextField("", 2); JButton button = new JButton("change"); button.addActionListener(this); selectPanel.add(new JLabel("RED")); selectPanel.add(redText); selectPanel.add(new JLabel("GREEN")); selectPanel.add(greenText); selectPanel.add(new JLabel("BLUE")); selectPanel.add(blueText); selectPanel.add(button); getContentPane().add(colorchooser, BorderLayout.CENTER); getContentPane().add(colorLabel, BorderLayout.PAGE_START); getContentPane().add(selectPanel, BorderLayout.PAGE_END); } public void stateChanged(ChangeEvent e) { Color color = colorchooser.getColor(); colorLabel.setBackground(color); } public void actionPerformed(ActionEvent e){ int red = Integer.parseInt(redText.getText()); int green = Integer.parseInt(greenText.getText()); int blue = Integer.parseInt(blueText.getText()); colorchooser.setColor(red, green, blue); } }