您的位置:首页 > 编程语言 > Java开发

java中的颜色选择器的使用

2016-09-23 20:07 183 查看
学习之前请自己查看API文档JFileChooser



static Color showDialog(Component Parent,String title,Color
initialColor)
显示包含颜色选择器的模式对话框
参数: parent 对话框显示再上面的组件
  title 对话框框架的标题
initialColor 颜色选择器的初始颜色
Static JDialog createDialog(Component parent, String
title,boolean modal,JColorChooser chooser
,ActionListener okListener,ActionListener
cancelListener)
创建一个包含颜色选择器的对话框
参数: parent
对话框显示再上面的组件
  title
对话框框架的标题
modal
如果直到对话框关闭,这个调用都被阻塞,则返回true
chooser 添加到对话框中的颜色选择器
okListener,cancelListener
OK和Cancel按钮的监听器
源代码:

package colorChooser;

import java.awt.Color;
import java.awt.Frame;
import java.awt.event.*;

import javax.swing.*;
import javax.swing.event.*;

public class ColorChooserPanelTest {

public static void main(String[] args) {
ColorChooserFrame cc=new ColorChooserFrame();
cc.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
cc.setVisible(true);
}

}

class ColorChooserFrame extends JFrame{
public ColorChooserFrame(){
setSize(400,300);
add(new ColorChooserPanel());
pack();
}
}
class ColorChooserPanel extends JPanel{
public ColorChooserPanel(){
JButton modalButton=new JButton("Modal");
modalButton.addActionListener(new ModalListener());
add(modalButton);
JButton modalessButton=new JButton("Modaless");
modalessButton.addActionListener(new
ModalessListener());
add(modalessButton);
JButton immediateButton=new JButton("Immediate");
immediateButton.addActionListener(new
ImmediateListener());
add(immediateButton);
}
private class ModalListener implements ActionListener{
public void actionPerformed(ActionEvent event){
Color defaultColor=getBackground();
Color
selected=JColorChooser.showDialog(ColorChooserPanel.this, "Set
background", 
defaultColor);
if(selected!=null)setBackground(selected);
}
}
private class ModalessListener implements
ActionListener{
private JDialog dialog;
private JColorChooser chooser;
public ModalessListener(){
chooser=new JColorChooser();
dialog=JColorChooser.createDialog(ColorChooserPanel.this,
"Background",
false, chooser, new ActionListener()//OK button listener
{
public void actionPerformed(ActionEvent event){
setBackground(chooser.getColor());
}
}, null);
}
public void actionPerformed(ActionEvent event){
chooser.setColor(getBackground());
dialog.setVisible(true);
}
}
private class ImmediateListener implements
ActionListener{
private JDialog dialog;
private JColorChooser chooser;
public ImmediateListener(){
chooser=new JColorChooser();
chooser.getSelectionModel().addChangeListener(new
ChangeListener()
{
public void stateChanged(ChangeEvent event){
setBackground(chooser.getColor());
}
});
dialog=new JDialog((Frame)null,false);
dialog.add(chooser);
dialog.pack();
}
public void actionPerformed(ActionEvent event){
chooser.setColor(getBackground());
dialog.setVisible(true);
}
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: