私はJavaプログラムを書いていますが、問題が発生しました。があり、ArrayList<JCheckBox>
これらのチェックボックスを備えたダイアログウィンドウを表示したいので、それらのいくつかをArrayList<>
選択でき、そのダイアログを閉じた後の結果として、選択した別のオブジェクトが必要です。ActionListener
これらのチェックボックスに追加することで結果を得ることができると思いますが、それをArrayList<JCheckBox>
ダイアログウィンドウに渡す方法がわかりません。
これまでのところ、私は次のようなことを試しました:
ArrayList<JCheckBox> al = new ArrayList<JCheckBox>();
for (MyClass mc : sr.getFields().values())
{
JCheckBox box = new JCheckBox(mc.getType());
al.add(box);
}
JOptionPane.showConfirmDialog(null, al);
チェックボックスのテキストを印刷しようとすると問題ありませんが、ダイアログには意味のないテキストの長い行しか表示されません。
それで、それを行う方法はありますか?
前もって感謝します..
このshowConfirmDialog
メソッドは、メッセージオブジェクトを正しくレンダリングするためにメッセージオブジェクトを解釈するArrayList
必要があり、解釈方法がわからないため、すべての要素を次のJPanel
例に追加する必要があります。
JPanel al = new JPanel();
for (MyClass mc : sr.getFields().values()){
JCheckBox box = new JCheckBox(mc.getType());
al.add(box);
}
JOptionPane.showConfirmDialog(null, al);
またはObject[]
例:
ArrayList<JCheckBox> al = new ArrayList<JCheckBox>();
for (MyClass mc : sr.getFields().values()){
JCheckBox box = new JCheckBox(mc.getType());
al.add(box);
}
Object[] obj = (Object[]) al.toArray(new Object[al.size()]);
JOptionPane.showConfirmDialog(ui, obj);
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加