5

JDateChooserユーザーの選択に応じて、オプション ペイン内にコンポーネントを表示したいと考えています。ポイントは、JDateChooser次のコードを使用して、表示したい方法を取得しようとしたことです。

JOptionPane.showInputDialog(null, new JDateChooser(),"Start date", JOptionPane.PLAIN_MESSAGE);

さまざまな種類のJOptionPaneバリアントを試してみましたが、これを行う方法がわかりません。ユーザーが日付を選択してボタンをクリックして確認できるようにして、その日付を取得して として使用できるようにする必要がありますString

私はこのようなものが欲しいです:

String s = JOptionPane.showInputDialog(null,"Text", "More Text", JOptionPane.INFORMATION_MESSAGE);

そのようにして、選択した日付を取得できます。jcalendar-1.4.jar を使用しています

4

1 に答える 1

5

私は最終的に自分に合った解決策にたどり着きました。DateChooser と String を別々に作成し、それらを Object 配列にまとめてから、オブジェクトを JOptionPane の引数として渡します。

JDateChooser jd = new JDateChooser();
String message ="Choose start date:\n";
Object[] params = {message,jd};
JOptionPane.showConfirmDialog(null,params,"Start date", JOptionPane.PLAIN_MESSAGE);

ユーザーが JOptionPane の [OK] ボタンをクリックすると日付を取得するために、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

その実装により、私が望んでいた方法で問題が解決されました。これが役立つことを願っています。

于 2016-02-12T14:00:03.383 に答える