沙漠中的鱼

欲上天堂,先下地狱
posts - 0, comments - 56, trackbacks - 0, articles - 119
  BlogJava :: 首页 ::  :: 联系 :: 聚合  :: 管理

JSpinner的数据表示方法

Posted on 2008-12-07 23:07 沙漠中的鱼 阅读(513) 评论(0)  编辑  收藏 所属分类: Java

        由于项目需要以界面的形式表示带有小数点的数据,而且让用户可以输入数据而不失精度。开始并没有重视它,以为只要把需要填入JSpinner的数据格式化就可以。事实不是这样,结果JSpinner能够正确显示数据,但是当调整数据时精度就发生了错误,怎么办呢?到网上找找,找到的都是数据格式化的方案,对我没有用,也找了一些书籍,由于JSpinner只是一个小小的组件,没有很详细的介绍,看样子,想简单地依靠别人的帮助文档是不行了,需要看看JSpinner的源代码了。。。。。
        进入JSpinner的源代码,仔细分析了他的组成结构,发现JSpinner显示不同的内容,采用不同的模型,像SpinnerDateModel,SpinnerListModel,SpinnerNumberModel。于是我想只要对模型修改不就行吗?最终我解决了下面是简单的代码
            JSpinner spiner = new JSpinner();
            int max ,min;//数据的最大最小小数点位数
            DecimalFormat format = ((JSpinner.NumberEditor) spiner.getEditor()).getFormat();
            format.setMaximumFractionDigits(max);
            format.setMinimumFractionDigits(min);
从上面代码看来非常简单,但是他确花费了我几个小时,希望能给有同样问题的人们有所帮助。最后还要感谢项目组另外一位同事的帮助。

转自:http://www.blogjava.net/hclown/articles/24383.html


只有注册用户登录后才能发表评论。


网站导航: