2014-02-13 62 views
0

如何使用JColorChooser更改java swing中的字体颜色?JColorChooser更改Java中的字体颜色

+1

非常简单的任务后,你通过[如何使用颜色选择器]( http://docs.oracle.com/javase/tutorial/uiswing/components/colorchooser.html) –

回答

0

下面是从例子中的代码,创建一个JColorChooser的实例,并把它添加到一个容器中:

public class ColorChooserDemo extends JPanel ... { 
public ColorChooserDemo() { 
    super(new BorderLayout()); 
    banner = new JLabel("Welcome to the Tutorial Zone!", 
         JLabel.CENTER); 
    banner.setForeground(Color.yellow); 
    . . . 
    tcc = new JColorChooser(banner.getForeground()); 
    . . . 
    add(tcc, BorderLayout.PAGE_END); 
} 

以下码寄存器,并实现了变化监听器:

tcc.getSelectionModel().addChangeListener(this); 
. . . 

public void stateChanged(ChangeEvent e) { 
Color newColor = tcc.getColor(); 
banner.setForeground(newColor); 
} 
1
 import java.awt.*; 
    import java.awt.event.*; 
    import javax.swing.*; 



    public class JColorChooserExample extends JFrame 
             implements ActionListener 
    { 


    private JButton b; 
    private Container c; 
    private Color color; 

    public JColorChooserExample(String title) 
    { 
     super(title); 

     color = Color.pink; 
     c = getContentPane(); 
     c.setLayout(new FlowLayout()); 
     c.setBackground(color); 

     c.add(new JLabel(
      "Click button to select a new background color")); 
     b = new JButton("Color"); 
     b.setToolTipText("Click here to change color"); 
     b.addActionListener(this); 
     c.add(b); 

     addWindowListener(new MyWindowCloser()); 
    } 

    public void actionPerformed(ActionEvent e) 
    { 
     color = JColorChooser.showDialog(
        this, "Select a Background Color", color); 
     if (color != null) 
     { 
      c.setBackground(color); 
     } 
    } 

    public static void main(String[] args) 
    { 
     JColorChooserExample jcce = 
      new JColorChooserExample("JColorChooser Example"); 
     jcce.pack(); 
     jcce.setVisible(true); 
    } 
} 

并阅读这tutorial