fontSizeSpinner = new JSpinner(new SpinnerNumberModel(32, 0, 256, 1)); fontPanel.add(fontSizeSpinner, new GridBagConstraints(1, 3, 1, 1, 0.0, 0.0, GridBagConstraints.WEST, GridBagConstraints.NONE, new Insets(0, 0, 5, 10), 0, 0)); ((JSpinner.DefaultEditor)fontSizeSpinner.getEditor()).getTextField().setColumns(2); gammaSpinner = new JSpinner(new SpinnerNumberModel(1.8f, 0, 30, 0.01)); ((JSpinner.DefaultEditor)gammaSpinner.getEditor()).getTextField().setColumns(2); bitmapPanel.add(gammaSpinner, new GridBagConstraints(1, 0, 1, 1, 0.0, 0.0, GridBagConstraints.EAST, GridBagConstraints.NONE, new Insets(0, 0, 5, 10), 0, 0)); paddingPanel.add(padTopSpinner, new GridBagConstraints(1, 1, 1, 1, 0.0, 0.0, GridBagConstraints.CENTER, GridBagConstraints.NONE, new Insets(0, 0, 0, 0), 0, 0)); ((JSpinner.DefaultEditor)padTopSpinner.getEditor()).getTextField().setColumns(2); paddingPanel.add(padRightSpinner, new GridBagConstraints(2, 2, 1, 1, 1.0, 0.0, GridBagConstraints.WEST, GridBagConstraints.NONE, new Insets(0, 0, 0, 5), 0, 0)); ((JSpinner.DefaultEditor)padRightSpinner.getEditor()).getTextField().setColumns(2); paddingPanel.add(padLeftSpinner, new GridBagConstraints(0, 2, 1, 1, 1.0, 0.0, GridBagConstraints.EAST, GridBagConstraints.NONE, new Insets(0, 5, 0, 0), 0, 0)); ((JSpinner.DefaultEditor)padLeftSpinner.getEditor()).getTextField().setColumns(2); paddingPanel.add(padBottomSpinner, new GridBagConstraints(1, 3, 1, 1, 0.0, 0.0, GridBagConstraints.CENTER, GridBagConstraints.NONE, new Insets(0, 0, 0, 0), 0, 0)); ((JSpinner.DefaultEditor)padBottomSpinner.getEditor()).getTextField().setColumns(2); ((JSpinner.DefaultEditor)padAdvanceXSpinner.getEditor()).getTextField().setColumns(2); ((JSpinner.DefaultEditor)padAdvanceYSpinner.getEditor()).getTextField().setColumns(2);
}; public static void main( String[] args ) { JFrame frame = new JFrame(); JTable table = new JTable(data,columnNames); super(new JTextField()); spinner = new JSpinner(); editor = ((JSpinner.DefaultEditor)spinner.getEditor()); textField = editor.getTextField(); textField.addFocusListener( new FocusListener() { public void focusGained( FocusEvent fe ) { textField.addActionListener( new ActionListener() { public void actionPerformed( ActionEvent ae ) { stopCellEditing(); ) { if ( !valueSet ) { spinner.setValue(value); textField.requestFocus(); System.err.println("Stopping edit"); try { editor.commitEdit(); spinner.commitEdit(); } catch ( java.text.ParseException e ) {
newPanel.setLayout(new FlowLayout()); JFormattedTextField tf = ((JSpinner.DefaultEditor) timeSpinner.getEditor()).getTextField(); DefaultFormatterFactory factory = (DefaultFormatterFactory) tf.getFormatterFactory(); DateFormatter formatter = (DateFormatter) factory.getDefaultFormatter(); Date date = getDate(); if (date != null) { Date time = (Date) timeSpinner.getValue(); GregorianCalendar timeCalendar = new GregorianCalendar(); timeCalendar.setTime( time ); JFrame frame = new JFrame(); frame.setTitle("Date Time Picker"); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); DateTimePicker dateTimePicker = new DateTimePicker(); dateTimePicker.setFormats( DateFormat.getDateTimeInstance( DateFormat.SHORT, DateFormat.MEDIUM ) ); frame.getContentPane().add(dateTimePicker); frame.pack(); frame.setVisible(true);
JFrame frame = new JFrame("enter digit"); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); JSpinner jspinner = makeDigitsOnlySpinnerUsingDocumentFilter(); frame.getContentPane().add(jspinner, BorderLayout.CENTER); frame.getContentPane().add(new JButton("just another widget"), BorderLayout.SOUTH); frame.pack(); frame.setVisible(true); JSpinner spinner = new JSpinner(new SpinnerNumberModel()); return spinner; JSpinner spinner = new JSpinner(new SpinnerNumberModel(0, 0, 20, 1)); JSpinner.NumberEditor jsEditor = (JSpinner.NumberEditor) spinner.getEditor(); final Document jsDoc = jsEditor.getTextField().getDocument(); if (jsDoc instanceof PlainDocument) { AbstractDocument doc = new PlainDocument() { jsEditor.getTextField().setDocument(doc);
JFrame f = new JFrame(); f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); JSpinner sp = new JSpinner(new LongNumberModel(0x8000L, 0x8000L, 0xFFFFL, 1L)); JSpinner.DefaultEditor editor = (JSpinner.DefaultEditor) sp.getEditor(); JFormattedTextField tf = editor.getTextField(); tf.setFormatterFactory(new MyFormatterFactory()); f.getContentPane().add(sp, BorderLayout.NORTH); f.pack(); f.setLocationRelativeTo(null); f.setVisible(true);
JFrame frame = new JFrame("Testing"); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.add(new TestPane()); frame.pack(); frame.setLocationRelativeTo(null); frame.setVisible(true); DefaultFormatterFactory dff = new DefaultFormatterFactory(format); JSpinner spinner = new JSpinner(new SpinnerNumberModel()); JSpinner.NumberEditor editor = new JSpinner.NumberEditor(spinner, "#0.######"); JFormattedTextField textField = editor.getTextField(); textField.setFormatterFactory(dff); textField.setColumns(10); spinner.setEditor(editor); setLayout(new GridBagLayout()); spinner.setValue(1.1234567d); add(spinner);
JFrame f= new JFrame("JSpinner Demo"); f.setSize(500,100); f.setLayout(new GridLayout(1, 3)); JSpinner ctrlSpin = new JSpinner(); ((JSpinner.NumberEditor)ctrlSpin.getComponent(2)).getTextField().setFormatterFactory(null); JButton ctrlButton = new JButton("Click"); JTextField ctrlTxt = new JTextField(""); f.add(ctrlSpin); f.add(ctrlButton); f.add(ctrlTxt); f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); f.setVisible(true); ctrlButton.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { ctrlTxt.setText(""+((JSpinner.NumberEditor)ctrlSpin.getComponent(2)).getTextField().getText());
flavorPanel.setBorder(BorderFactory.createTitledBorder("Flavors")); for (String flavor : FLAVORS) { JCheckBox flavorBox = new JCheckBox(flavor); flavorBox.setActionCommand(flavor); flavorPanel.add(flavorBox); flavorBoxes.add(flavorBox); vgRatioSpinner = new JSpinner(vgRatioModel); JComponent editor = vgRatioSpinner.getEditor(); if (editor instanceof DefaultEditor) { ((DefaultEditor)editor).getTextField().setColumns(4); getSelectionButton.addActionListener(new SelectionActionListener()); add(flavorPanel); add(Box.createHorizontalStrut(20)); add(new JLabel("Batch Size:")); add(batchSizeCombo); System.out.println("VG Ration: " + vgRatioSpinner.getValue()); JuiceTwo mainPanel = new JuiceTwo();
JFrame fenster = new JFrame("Hallo Welt mit Swing"); fenster.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); SpinnerNumberModel model = new SpinnerNumberModel(1,1,9,1); JSpinner spinner = new JSpinner(model); JFormattedTextField textField = ((JSpinner.DefaultEditor)spinner.getEditor()).getTextField(); textField.setOpaque(true); spinner.setBorder(BorderFactory.createEmptyBorder(10, 10, 10, 0)); spinner.setUI(new javax.swing.plaf.basic.BasicSpinnerUI() { protected Component createNextButton() { Component c = new JButton(); spinner.setBackground(Color.LIGHT_GRAY); fenster.setLayout( new FlowLayout() ); fenster.add(spinner); fenster.setSize(300, 200); fenster.setVisible(true);
JFrame f = new JFrame(); f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); JSpinner sp = new JSpinner(new SpinnerNumberModel(0,0,10000,1)); JSpinner.DefaultEditor editor = (JSpinner.DefaultEditor)sp.getEditor(); JFormattedTextField tf = editor.getTextField(); tf.setFormatterFactory(new MyFormatterFactory()); f.getContentPane().add(sp, BorderLayout.NORTH); f.setSize(200,200); f.setVisible(true);
value, null, null, Calendar.MINUTE); JSpinner sp1 = new JSpinner(m); sp1.setEditor(new JSpinner.DateEditor(sp1, PATTERN)); JSpinner sp2 = new JSpinner(m); final JSpinner.DateEditor editor = new JSpinner.DateEditor(sp2, PATTERN); sp2.setEditor(editor); editor.getTextField().addFocusListener(new FocusAdapter() { @Override public void focusGained(FocusEvent e) { EventQueue.invokeLater(new Runnable() { @Override public void run() { JTextField f = editor.getTextField(); int i = f.getText().lastIndexOf(":"); f.select(i+1, i+3); p.add(sp1); p.add(sp2); JPanel panel = new JPanel(new BorderLayout()); panel.add(p, BorderLayout.NORTH); panel.setBorder(BorderFactory.createEmptyBorder(8,8,8,8)); return panel;
final JSpinner spinner = new JSpinner(new SpinnerNumberModel(1, 1, 4, 1)); JSpinner.NumberEditor editor = (JSpinner.NumberEditor) spinner.getEditor(); JFormattedTextField textField = editor.getTextField(); textField.addPropertyChangeListener("value", new PropertyChangeListener() { @Override public void propertyChange(PropertyChangeEvent evt) { backupSpinnerValue = newValue; } else { spinner.setValue(backupSpinnerValue); content.add(spinner); content.add(button); JFrame frame = new JFrame("Demo"); frame.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); frame.add(content); frame.pack(); frame.setLocationByPlatform(true); frame.setVisible(true);
model.setValue(calendar.getTime()); JSpinner spinner = new JSpinner(model); DateFormatter formatter = (DateFormatter)editor.getTextField().getFormatter(); formatter.setAllowsInvalid(false); // this makes what you want formatter.setOverwriteMode(true); spinner.setEditor(editor); content.add(spinner); JFrame frame = new JFrame("Demo"); frame.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); frame.getContentPane().add(content); frame.pack(); frame.setLocationRelativeTo(null); frame.setVisible(true);
JFrame f = new JFrame("JSpinnerTest"); f.add(new JSpinnerTest()); f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); f.pack(); f.setVisible(true); super(new GridLayout(0, 1)); final JLabel label = new JLabel(); final JSpinner spinner = new JSpinner(); Calendar calendar = Calendar.getInstance(); Date initDate = calendar.getTime(); calendar.add(Calendar.YEAR, 10); Date latestDate = calendar.getTime(); spinner.setModel(new SpinnerDateModel( initDate, earliestDate, latestDate, Calendar.MONTH)); DateEditor editor = new JSpinner.DateEditor(spinner, "MMM yyyy"); spinner.setEditor(editor); JFormattedTextField jtf = editor.getTextField(); DefaultFormatter formatter = (DefaultFormatter) jtf.getFormatter(); formatter.setCommitsOnValidEdit(true); spinner.addChangeListener(new ChangeListener() { this.add(spinner); this.add(label);
JSpinner spinnerUpDown = new JSpinner(); spinnerUpDown.setModel(new SpinnerNumberModel(0, 0, 1000, 10)); spinnerUpDown.setEditor(new JSpinner.NumberEditor(spinnerUpDown, "0000")); System.out.println(spinnerUpDown.getEditor()); JFrame frame = new JFrame("Test"); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.setLayout(new GridBagLayout()); frame.add(spinnerUpDown); frame.pack(); frame.setLocationRelativeTo(null); frame.setVisible(true); JTextComponent txt = ((JSpinner.DefaultEditor) spinnerUpDown.getEditor()).getTextField(); txt.setDocument(doc);
private JTextField text = new JTextField(15); private JSpinner spinner = new JSpinner(new SpinnerNumberModel(0, 0, 15, 1)); JFormattedTextField format = ((JSpinner.DefaultEditor) spinner.getEditor()).getTextField(); add(text, BorderLayout.NORTH); add(spinner, BorderLayout.SOUTH); public void run() { JFrame frame = new ComboBoxTwo(); frame.setDefaultCloseOperation(EXIT_ON_CLOSE); frame.pack(); frame.setVisible(true);
JFrame frame = new JFrame("enter digit"); JSpinner jspinner = makeDigitsOnlySpinnerUsingDocumentFilter(); frame.getContentPane().add(jspinner, BorderLayout.CENTER); frame.getContentPane().add(new JButton("just another widget"), BorderLayout.SOUTH); frame.pack(); frame.setVisible(true); JSpinner spinner = new JSpinner(new SpinnerNumberModel()); JSpinner.NumberEditor jsEditor = (JSpinner.NumberEditor) spinner.getEditor(); JFormattedTextField textField = jsEditor.getTextField(); final DocumentFilter digitOnlyFilter = new DocumentFilter() { format.setMaximumFractionDigits(2); format.setMinimumFractionDigits(5); textField.setFormatterFactory(new DefaultFormatterFactory(new InternationalFormatter(format) {
+ "long string (really long)"); JTextField inputCat = new JTextField(example); inputCat.setCaretPosition(0); SpinnerModel modelSpinner = new SpinnerDateModel(now.getTime(), null, null, Calendar.MONTH); final JSpinner spinner = new JSpinner(modelSpinner); spinner.setEditor(new JSpinner.DefaultEditor(spinner)); listPane.setLayout(new BoxLayout(listPane, BoxLayout.X_AXIS)); listPane.add(comboBox); listPane.add(Box.createHorizontalStrut(10)); listPane.add(inputCat); listPane.add(Box.createHorizontalStrut(10));
initComponents(); SpinnerNumberModel model1 = new SpinnerNumberModel(0.0,-1000.0 ,1000.0,0.1); this.jSpinner1.setModel(model1); SpinnerNumberModel model2 = new SpinnerNumberModel(0.0,-1000.0 ,1000.0,0.1); this.jSpinner2.setModel(model2); (((JSpinner.NumberEditor)this.jSpinner1.getEditor()).getTextField()).setFormatterFactory(new JFormattedTextField.AbstractFormatterFactory() { @Override public JFormattedTextField.AbstractFormatter getFormatter(JFormattedTextField tf) { (((JSpinner.NumberEditor)this.jSpinner2.getEditor()).getTextField()).setFormatterFactory(new JFormattedTextField.AbstractFormatterFactory() { @Override public JFormattedTextField.AbstractFormatter getFormatter(JFormattedTextField tf) { jSpinner2 = new javax.swing.JSpinner(); jSpinner1.setOpaque(false); jSpinner1.setRequestFocusEnabled(false); ); pack(); new NewJFrame().setVisible(true);
public SpinnerCellEditor() { super(new JTextField()); spinner = new JSpinner(); editor = ((JSpinner.DefaultEditor) spinner.getEditor()); textField = editor.getTextField(); textField.addFocusListener(new FocusAdapter() { @Override public void focusGained(FocusEvent fe) { SwingUtilities.invokeLater(() -> { if (valueSet) { textField.setCaretPosition(1); } }); } }); textField.addActionListener(ae -> this.stopCellEditing()); }