public TimeoutGUI() { rows = Timeout.getTimeoutsJava().entrySet().stream().map(e -> { NumberFormat format = NumberFormat.getInstance(); NumberFormatter formatter = new NumberFormatter(format); format.setGroupingUsed(false); formatter.setValueClass(Integer.class); formatter.setMinimum(0); formatter.setAllowsInvalid(true); formatter.setMaximum(Integer.MAX_VALUE); final JFormattedTextField field = new JFormattedTextField(formatter); field.setToolTipText(FIELD_TOOLTIP); field.setText(e.getValue().toString()); return new AbstractMap.SimpleEntry<>(e.getKey(), field); }).collect(Collectors.toMap(AbstractMap.SimpleEntry::getKey, AbstractMap.SimpleEntry::getValue)); rootPanel = createRootPanel(); }
public static void main(String[] args) { NumberFormat format = NumberFormat.getInstance(); NumberFormatter formatter = new NumberFormatter(format); formatter.setValueClass(Integer.class); formatter.setMinimum(0); formatter.setMaximum(Integer.MAX_VALUE); formatter.setAllowsInvalid(false); // If you want the value to be committed on each keystroke instead of focus lost formatter.setCommitsOnValidEdit(true); JFormattedTextField field = new JFormattedTextField(formatter); JOptionPane.showMessageDialog(null, field); // getValue() always returns something valid System.out.println(field.getValue()); }
NumberFormatter nf = new NumberFormatter(); nf.setValueClass(Integer.class); nf.setMinimum(new Integer(0)); nf.setMaximum(new Integer(100)); JFormattedTextField field = new JFormattedTextField(nf);
NumberFormat longFormat = NumberFormat.getIntegerInstance(); NumberFormatter numberFormatter = new NumberFormatter(longFormat); numberFormatter.setValueClass(Long.class); //optional, ensures you will always get a long value numberFormatter.setAllowsInvalid(false); //this is the key!! numberFormatter.setMinimum(0l); //Optional JFormattedTextField field = new JFormattedTextField(numberFormatter);
private void createUIComponents() { NumberFormat format = NumberFormat.getIntegerInstance(); NumberFormatter numberFormatter = new NumberFormatter(format); numberFormatter.setValueClass(Integer.class); numberFormatter.setAllowsInvalid(false); numberFormatter.setMinimum(1); numberFormatter.setCommitsOnValidEdit(true); targetHeight = new JFormattedTextField(numberFormatter); targetWidth = new JFormattedTextField(numberFormatter); targetRoot = new FileBrowserField(FileBrowserField.RESOURCE_DIR_CHOOSER); } }
@SuppressWarnings({ "unchecked", "rawtypes" }) @Override public void setMinimum(Comparable minimum) { super.setMinimum(minimum); this.minAsBig = minimum != null ? new BigDecimal(minimum.toString()) : null; }
@SuppressWarnings("unchecked") @Override public void setMinimum(Comparable minimum) { super.setMinimum(minimum); this.minAsBig = minimum != null ? new BigDecimal(minimum.toString()) : null; }
@SuppressWarnings({ "unchecked", "rawtypes" }) @Override public void setMinimum(Comparable minimum) { super.setMinimum(minimum); this.minAsBig = minimum != null ? new BigDecimal(minimum.toString()) : null; }
@SuppressWarnings("unchecked") @Override public void setMinimum(Comparable minimum) { super.setMinimum(minimum); this.minAsBig = minimum != null ? new BigDecimal(minimum.toString()) : null; }
@SuppressWarnings("unchecked") @Override public void setMinimum(Comparable minimum) { super.setMinimum(minimum); this.minAsBig = minimum != null ? new BigDecimal(minimum.toString()) : null; }
@SuppressWarnings({ "unchecked", "rawtypes" }) @Override public void setMinimum(Comparable minimum) { super.setMinimum(minimum); this.minAsBig = minimum != null ? new BigDecimal(minimum.toString()) : null; }
@SuppressWarnings({ "unchecked", "rawtypes" }) @Override public void setMinimum(Comparable minimum) { super.setMinimum(minimum); this.minAsBig = minimum != null ? new BigDecimal(minimum.toString()) : null; }
@SuppressWarnings("unchecked") @Override public void setMinimum(Comparable minimum) { super.setMinimum(minimum); this.minAsBig = minimum != null ? new BigDecimal(minimum.toString()) : null; }
public static void main(String[] args) { NumberFormat format = NumberFormat.getInstance(); format.setGroupingUsed(false); NumberFormatter formatter = new NumberFormatter(format); formatter.setValueClass(Integer.class); formatter.setMinimum(0); formatter.setMaximum(Integer.MAX_VALUE); JFormattedTextField field = new JFormattedTextField(formatter); JOptionPane.showMessageDialog(null, field); }
@Override public AbstractFormatter getFormatter(JFormattedTextField tf) { NumberFormatter formatter = new NumberFormatter(new DecimalFormat("#0")); formatter.setValueClass(Integer.class); formatter.setAllowsInvalid(true); formatter.setCommitsOnValidEdit(false); formatter.setMinimum(0); return formatter; }; }
@Override public AbstractFormatter getFormatter(JFormattedTextField tf) { NumberFormatter formatter = new NumberFormatter(new DecimalFormat("#0")); formatter.setValueClass(Integer.class); formatter.setAllowsInvalid(true); formatter.setCommitsOnValidEdit(false); formatter.setMinimum(0); return formatter; }; }
NumberFormat format = NumberFormat.getCurrencyInstance(Locale.US); format.setMaximumFractionDigits(0); NumberFormatter formatter = new NumberFormatter(format); formatter.setMinimum(5.0); formatter.setMaximum(10000000.0); formatter.setAllowsInvalid(false); formatter.setOverwriteMode(true); JFormattedTextField field = new JFormattedTextField(formatter); field.setValue(5.0);
public static NumberFormatter createIntegerFormatter(int minimum, int maximum) { NumberFormat format = NumberFormat.getIntegerInstance(); NumberFormatter formatter = new NumberFormatter(format); formatter.setMinimum(minimum); formatter.setMaximum(maximum); formatter.setValueClass(Integer.class); formatter.setCommitsOnValidEdit(true); return formatter; }
/** * It is your responsibility to set correct horizontal align (left in case of UI Designer) */ public static void configureNumericFormattedTextField(@NotNull JFormattedTextField textField) { NumberFormat format = NumberFormat.getIntegerInstance(); format.setParseIntegerOnly(true); format.setGroupingUsed(false); NumberFormatter numberFormatter = new NumberFormatter(format); numberFormatter.setMinimum(0); textField.setFormatterFactory(new DefaultFormatterFactory(numberFormatter)); textField.setHorizontalAlignment(SwingConstants.TRAILING); textField.setColumns(4); }
private AbstractFormatter configureFormatter() { NumberFormat format = NumberFormat.getInstance(); NumberFormatter formatter = new NumberFormatter(format); formatter.setValueClass(Integer.class); formatter.setMinimum(0); formatter.setMaximum(Integer.MAX_VALUE); formatter.setAllowsInvalid(false); formatter.setCommitsOnValidEdit(true); return formatter; }