原创  Swing Datepicker(日历控件) 收藏

此日历控件在www.eltima.com上给的Swing library4.0的jar包里提出出来 并重新封装在DatePicker类中 将必要的函数由私有状态提升为公开状态.

       下在地址:http://download.csdn.net/source/1023826

DatePicker类继承自JComponent所以在实例化后可添加到任何容器中(JPanel,JFrame,JDialog等)

使用方法:

        DatePicker datepick = new DatePicker(Component c,new Date());//c为此组件所许要放置的父容器  d 初始化指定日期

      //  DatePicker datepick = new DatePicker(Component c);//无初始化日期

       datepick.setLocale(Locale.US);//设置显示语言

       datepick.setPattern("MM/dd/yyyy");//设置日期格式化字符串

       datepick.setEditorable(false);//设置是否可编辑

       datepick.setBackground(Color.gray);//设置背景色

       datepick.setForeground(Color.yellow);//设置前景色

       datepick.setPreferredSize(new Dimension(100,21));//设置大小

   datepick.setTextAlign(DatePicker.CENTER);//设置文本水平方向位置:DatePicker.CENTER 水平居中,DatePicker.LEFT 水平靠左   DatePicker.RIGHT 水平靠右

 

效果:

 

 

 

 

 

 

使用datepick.getText()获得文本域的值

   修改了这个控件的一些bug.

1.       setLocale方法建议不要使用,在当前日期为null的情况下 日历不会默认为当天

2.       默认格式化格式为:"MM/dd/yyyy"

3.       默认环境为Locale.US

4.       无日期初始化的时候日历默认为当前

    

5.       公开timepanel控制函数

     datepick1.setTimePanleVisible(true);

  

6.去除在文本框中直接编辑时自动弹出日期选择窗口,在允许手动编辑改文本框的情况下,错误处理如下

 

错误对话框是否显示控制:

setShowerrormsg(Boolean flag)

错误消息设置:

setErrormsg(String errormsg);默认为:"InValid Date!\nPattern:(" + pattern + ")";

  

 

public void setCalendarVisible(boolean flag)//设置日期选择面板显示或隐藏

public void setDisableddays(int[] days)//设置不可选择日历数组

datepick1.setDisableddays(new int[]{1,2,3,4,5,5} );//设置每个月的123456号日期不可选

 

public void setHightlightdays(int[] days, Color color)//根据指定的颜色高亮显示指定的日期

datepick1.setHightlightdays(new int[]{1,2,3,4,5,5} , Color.red);

 

 

可以使用addFocusLostListener(FocusLostListener f)添加焦点失去监听

 

addfocusInListener(FocusGainedListener f) 添加焦点获取监听

simple example:

 

发表于 @ 2009年02月19日 13:14:00 | 评论( loading... ) | 编辑| 举报| 收藏

旧一篇:linux下安装Eeclipse | 新一篇:linux 使用mailx发送邮件

  • 发表评论
  • 评论内容:
  •  
Copyright © a276202460
Powered by CSDN Blog