获取JColorChooser的颜色名称

时间:2012-01-21 12:30:38

标签: java jframe

我正在使用JFrame。在设计视图中我放了一个JBUtton,两个JTextField和摆动窗口JColorChooser。比如我在两个JTextField中为此获取十六进制值和颜色名称的代码。如果我点击JButton,它将打开JColorChooser调色板,之后我点击JColorChooser选择一个颜色它显示相应的颜色十六进制值另一个JTextField中的一个JtextField和颜色名称。但我可以得到十六进制值,但我不知道我怎么能得到颜色名称。

  import javax.swing.*;
        import java.awt.*;
      import javax.swing.event.*;
       import java.util.Set;
       import javax.accessibility.*;
        import javax.swing.colorchooser.ColorSelectionModel;7.
      public class Main extends JComponent implements Accessible
      {
         public ColorSelectionModel selectionModel;
         public static  final String SELECTION_MODEL_PROPERTY = "selectionModel";
         public  JColorChooser chooser;
         public Color color;
         public void process()
         {
         JFrame frame;
         JButton  button ;
         final JTextField text1,text2;
         chooser = new JColorChooser();
         frame= new JFrame();
         JPanel panel = new JPanel();
         button = new JButton("Show color Palette");
         text1 = new JTextField(20);
         text2 = new JTextField(20);
         frame.add(panel);
         panel.add(button);
         panel.add(text1);
         panel.add(text2);
         panel.add(chooser);
         chooser.setVisible(false);
         button.setLocation(800,600);
         button.setActionCommand("");
         button.addActionListener(new ActionListener() {
            public void actionPerformed(ActionEvent ae) {
             color = chooser.showDialog(chooser, "SHOW THE COLOR", chooser.getColor());
            {
              if(color!= null)
               {
                 String hex = Integer.toHexString(color.getRGB() & 0xffffff);
                 hex="#"+hex;
                 text1.setText(hex);
               }
             }
       }
             });
         frame.setVisible(true);
         frame.setSize(1000,800);
         }
        public static void main( String [] argv)
       {
         Main m1 = new Main();
       m1.process();
      }
    }
    </pre></code>

1 个答案:

答案 0 :(得分:1)

大多数颜色都没有名字。你的映射只能从另一方起作用。