0

私はちょうど JComboBox の JavaDoc を読みました (私は人生があると約束します... 私は楽しみのために読んでいませんでした. =P)、私のプログラムで抱えている問題はgetSelectedItem()に起因すると思います.方法。ドキュメントには次のように記載されています。

現在選択されている項目を返します。

コンボ ボックスが編集可能な場合、この値は、addIteminsertItemAtまたはデータ コンストラクターを使用してコンボ ボックスに追加されていない可能性があります。

これらのメソッドまたはコンストラクターで追加された値を取得できない場合、そのメソッドは何の役に立つのでしょうか? また、「編集可能な」JComboBox から値を取得するにはどうすればよいですか?

4

4 に答える 4

2

JComboxBoxでユーザーが追加した追加の値は、 ComboBoxModelには追加されませんが、getSelectedItem()を介してjava.lang.Stringとして使用できます。

于 2010-03-29T06:44:25.323 に答える
2

これらのメソッドまたはコンストラクターで追加された値を取得できない場合、そのメソッドはどのように使用されますか?そして、どうすれば「編集可能な」JComboBoxから値を取得できますか?

それはドキュメントが言っていることではありません。ドキュメントには、選択したアイテムがadd / insertItemで追加されていない可能性があると記載されています。これは、ユーザーが自分で値を編集/入力した場合に非常によく当てはまります。

いずれの場合も、getSelectedItem()は、入力した値の1つであるか、ユーザーが入力した値の1つであるかに関係なく、コンボボックスで選択されたものをすべて提供します。

于 2010-03-29T07:15:27.923 に答える
0
final Object object = jComboBox.getEditor().getItem();
if (object instanceof String) {
    final String string = (String)object;
}
于 2010-03-29T06:44:27.503 に答える
0

コンボボックス モデルで指定された値の範囲外の特定の入力を許可する場合に役立ちます。

于 2010-03-29T07:06:23.087 に答える