Reputation: 16048
I need to put a JSpinner in a JOptionPane. Here is what I've tried:
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.JSpinner;
import javax.swing.SpinnerNumberModel;
public static void main(String[] args) {
SpinnerNumberModel sModel = new SpinnerNumberModel(0, 0, 30, 1);
JSpinner spinner = new JSpinner(sModel);
JOptionPane.showInputDialog(spinner);
}
Which results in:
How do I remove the textbox?
Upvotes: 6
Views: 4862
Reputation: 68857
You have to use showMessageDialog
.
SpinnerNumberModel sModel = new SpinnerNumberModel(0, 0, 30, 1);
JSpinner spinner = new JSpinner(sModel);
JOptionPane.showMessageDialog(null, spinner);
For still having a cancel button, use:
int option = JOptionPane.showOptionDialog(null, spinner, "Enter valid number", JOptionPane.OK_CANCEL_OPTION, JOptionPane.QUESTION_MESSAGE, null, null, null);
if (option == JOptionPane.CANCEL_OPTION)
{
// user hit cancel
} else if (option == JOptionPane.OK_OPTION)
{
// user entered a number
}
Here is a screenshot on OS X:
Upvotes: 14