欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

swing中spinner 博客分类: 技术 swing spinner 

程序员文章站 2024-03-22 19:55:58
...
swing中的spinner,我想搞过swing的童鞋们再熟悉不过了,通过两个小箭头将值尽心变化。在一个项目开发中,偶采用的是年份和月份的组合,点向上按钮年或月加一,反之则减一,编辑框显示格式为yyyy/MM,问题来了,当界面显示后点击按钮是默认年份增减而不是月份增减,这样话使用起来极不方便,当然了如果将显示格式设置为MM/yyyy,则是月份增减,但是显示上明显不符合习惯,至少我是这么认为,后来终于找到了办法。关键代码如下:
DateEditor ed = new JSpinner.DateEditor(spinner, "yyyy/MM");
ed.getTextField().setCaret(new DefaultCaret() { 
        private boolean diverted = false; 
         
        public void setDot( int dot ) 
        { 
        diverted = (dot == 0); 
        if (diverted) { 
        dot = getComponent().getDocument().getLength(); 
        } 
        super.setDot( dot ); 
        } 
        public void moveDot( int dot ) 
        { 
        if (diverted) { 
        super.setDot(0); 
        diverted = false; 
        } 
        super.moveDot( dot ); 
        } 
        });
//
spinner.setEditor(ed);
相关标签: swing spinner