I want to display a JDateChooser
component inside an Option pane depending on some selection from the user.
The point is that I tried getting the JDateChooser
the way I want it to appear using next code:
JOptionPane.showInputDialog(null, new JDateChooser(),"Start date", JOptionPane.PLAIN_MESSAGE);
I tried with different kinds of JOptionPane
variants but I can't figure out how to get this done, the user must be able to select the date and confirm by clicking a button so that I can retrieve that date and use it as a String
.
I'd like to have something like this:
String s = JOptionPane.showInputDialog(null,"Text", "More Text", JOptionPane.INFORMATION_MESSAGE);
So that in that way I can get the selected date. I'm working with jcalendar-1.4.jar
message =JOptionPane. showInputDialog("Enter a line of text:"); In this single line the prompt is specified and the message is read.
Shows a question-message dialog requesting input from the user parented to parentComponent . Passing null to it just indicates that there's not an associated "parent" dialog - ie, the dialog being displayed does not belong to another dialog.
JOptionPane. showInputDialog() will return the string the user has entered if the user hits ok, and returns null otherwise.
I finally reached a solution that worked for me. I stared creating separately a DateChooser and a String and put them together in an Object array, then pass the object as argument for the JOptionPane.
JDateChooser jd = new JDateChooser();
String message ="Choose start date:\n";
Object[] params = {message,jd};
JOptionPane.showConfirmDialog(null,params,"Start date", JOptionPane.PLAIN_MESSAGE);
In order to get the date once the user clicks the "OK" button in the JOptionPane I implemented a SimpleDateFormat.
String s="";
SimpleDateFormat sdf = new SimpleDateFormat("MM/dd/yyyy");
s=sdf.format(((JDateChooser)params[1]).getDate());//Casting params[1] makes me able to get its information
That implementation solved the problem the way I wanted, I hope you guys find this helpful.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With