请加我QQ:53112850,我加过你了,不过你当时没在线
----------------解决方案--------------------------------------------------------
它很容易用啊
Color c=JColorChooser.showDialog(Component component, String title, Color initialColor)
第一个参数表示此颜色选取器的父组件,第二个表示选取器的标题,第三个表示,初始化的颜色.
此方法会一直堵塞当前线程,直到用户选择了一种颜色或者取消了为止
如果用户选取了,则返回的就是它选取的颜色,如果用户取消了,则返回的是null
----------------解决方案--------------------------------------------------------
冰峰,我每次查JDK,像Component component之类的参数我就不知道该写什么了,就是一直理解不了这个,你指的父组件是指的什么,没弄明白,你能否随便写个例子让我参考一下?谢谢!!!
----------------解决方案--------------------------------------------------------
父组件,举个例子说吧,比如,你在生成颜色选取器之前,总有一个窗口吧,那么你当然希望你这个颜色选举器是基于它的新窗口吧,也就是说,它是一个模态的,这个时候父组件就是你需要和谁模态你就把父组件设为谁
模态是什么?模态就是在你关掉这个窗口之前是不能接触到父组件的
现在明白了些吧
----------------解决方案--------------------------------------------------------
模态?脑里还没这个模仿,一头雾水.55555知识面太欠缺了,要不麻烦冰峰兄随便写一个组件,例如点击此组件便弹一个颜色选择器出来,麻烦你了,冰峰,我目前就是卡在这里了,!!!
----------------解决方案--------------------------------------------------------
/*
* ColorDemo.java
*
* Created on 2006年10月29日, 上午9:16
*
* To change this template, choose Tools | Template Manager
* and open the template in the editor.
*/
/**
*
* @author lbf
*/
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class ColorDemo extends JFrame implements ActionListener{
private JButton ok,exit;
private JLabel demo;
/** Creates a new instance of ColorDemo */
public ColorDemo() {
super("颜色选取DEMO");
initWindow();
}
private void initWindow(){
ok=new JButton("选择");
exit=new JButton("退出");
demo=new JLabel("这是样版字!!!",JLabel.CENTER);
demo.setFont(new Font("黑体",Font.BOLD,20));
JPanel jpButton=new JPanel();
this.getContentPane().add(jpButton,BorderLayout.SOUTH);
this.getContentPane().add(demo,BorderLayout.CENTER);
jpButton.add(ok);
jpButton.add(exit);
ok.addActionListener(this);
exit.addActionListener(this);
this.setSize(300,300);
this.setLocationRelativeTo(null);
this.setVisible(true);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
public void actionPerformed(ActionEvent ae){
if(ae.getSource()==ok){
Color c=JColorChooser.showDialog(this,"请选择颜色",Color.BLUE);
if(c==null){
JOptionPane.showMessageDialog(this,"您没有选取颜色!");
}else{
demo.setForeground(c);
}
}else if(ae.getSource()==exit){
System.exit(0);
}
}
public static void main(String args[]){
new ColorDemo();
}
}
你看一下吧
简单的颜色选取器
体会一下什么叫模态,你在关掉颜色选择框之前,能按到主面板么,当然按不到,这就是模态.
[此贴子已经被作者于2006-10-29 9:32:58编辑过]
----------------解决方案--------------------------------------------------------
...嘿嘿..学习了..
----------------解决方案--------------------------------------------------------
呵呵,好快啊
----------------解决方案--------------------------------------------------------
呵呵..不过..这个例子好像也蛮简单的...
----------------解决方案--------------------------------------------------------
呵呵,简单是简单,但是可以做一个例子嘛
----------------解决方案--------------------------------------------------------