latitude: 43,324523 longitude: 34,958140
我使用了此处提供的 IntegerField IntegerField
我可以解析数字以获得我喜欢的格式,但我希望在框架屏幕中得到它。当用户输入时(不输入点或逗号)
但我怎样才能做到呢。
这是我要编辑的框架
In this screen it should be changed
Like the second box, User won't enter the dots但这不是我喜欢的格式。当您阅读代码时,您就会明白我的意思。
第三个屏幕截图是用此代码拍摄的
DecimalFormat format = new DecimalFormat("##,####");
format.setGroupingUsed(true);
NumberFormatter formatter = new NumberFormatter(format);
formatter.setValueClass(Integer.class);
formatter.setMaximum(Integer.MAX_VALUE);
formatter.setAllowsInvalid(false);
IntegerField minField = new IntegerField();
JFormattedTextField maxField = new JFormattedTextField(formatter);
最佳答案
好的,我找到了解决方案。 MaskFormatter 很好地处理了这个问题。尽管如此,任何其他想法将不胜感激
MaskFormatter latitudeformat=new MaskFormatter("##.######");
MaskFormatter longitudeformat=new MaskFormatter("###.######");
latitudeformat.setPlaceholderCharacter('0');
latitudeformat.setOverwriteMode(true);
longitudeformat.setPlaceholderCharacter('0');
longitudeformat.setOverwriteMode(true);
JFormattedTextField latitudeField = new JFormattedTextField(latitudeformat);
JFormattedTextField longituteField = new JFormattedTextField(longitudeformat);
关于java - 如何在java中为JTextField制作坐标格式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38846023/