0

JList から 3 つの個別の文字列を取得するにはどうすればよいですか? 使用するmodel.elementAtと文字列が取得されますが、それらは互いに分離されていません。

  • データはどのように JList に保存されますか?
  • 配列を使用してデータを互いに分離することはできますか?
  • データは配列に格納されていますか?
while(resultaat.next()){
    model.addElement(resultaat.getString(1) + "  "
        + resultaat.getString(2) + "  "
        + resultaat.getString(3));
}

このコード行を使用して、一連の文字列を JList モデルに追加します。文字列は mysql データベースからのものです。

4

2 に答える 2

1

必要な値を表すことができ、必要な形式で値を表示できるコンテナオブジェクトを作成します...

public class ListObject {
    private String[] values;
    public ListObject(String... values) {
        this.values = values;
    }

    public int size() {
        return values == null ? 0 : values.length;
    }

    public String get(int index) {
        return values == null ? null : values[index];
    }

    public String toString() {
        StringBuilder sb = new StringBuilder(64);
        if (values != null) {
            for (String value : values) {
                if (sb.length() > 0) {
                    sb.append(" ");
                }
                sb.append(value);
            }
        }
        return sb.toString();
    }
}

ラッパー オブジェクトをモデルに追加します...

while(resultaat.next()){
    model.addElement(new ListObject(resultaat.getString(1),
        resultaat.getString(2),
        resultaat.getString(3)));
}

必要に応じて、値を取得します...

String value = model.getElementAt(index).get(0);

例えば

于 2012-12-06T01:54:10.650 に答える
0

データはどのように JList に保存されますか? - それらは実際には jList のモデルに格納されるため、jList().getElement() のみを呼び出すのではなく、jList.getModel().getElementAt() を呼び出す必要があります。

配列を使用してデータを互いに分離することはできますか? はい、私の例を見てください

データは配列に格納されていますか? いいえ、それらは jList のモデルにあります

このコードを試して、jlist モデルをオブジェクトの配列に取得してください

// create array with Model size
Object[] arrayOfElements = new Object[yourjList.getModel().getSize()];

// easy loop for adding elements from jList to array
 for(int i = 0; i< yourjList.getModel().getSize(); i++){

                            arrayOfElements[i] = yourjList.getModel().getElementAt(i);
            }
于 2012-12-06T01:19:22.353 に答える