1

JList配列である4 を使用していますが、

JList jlst = new JList[4];

次に、オブジェクトの配列から最初のリスト項目を追加しています。

jlst[0].setListData(getObjAL());

ここで、関数getObjAL()function はオブジェクトの配列を提供します。

jlst[0]最初のリスト( )の選択項目を2番目のリスト( )に表示したいjlst[1]

そのために私はコードを書いています、

jlstPrimitives[i].addListSelectionListener(new ListSelectionListener() {
    @Override
    public void valueChanged(ListSelectionEvent listevt) {
        Jlist objLstTemp = (Jlist) listevt.getSource();
        jlst[1].setListData(objLstTemp.getSelectedValue()));
    }
});

しかし、それはに表示されていませんlist[1]。誰か助けてください...

4

1 に答える 1

1

私は、うまくいかないかもしれない十数のことを考えることができますが、どれもあなたに影響を与えることはありません。将来のサポートを改善するために、問題を示す実行可能な例を投稿してください。コンテキスト外にコードを貼り付けることは役に立ちません(多くの場合)。

コードから、配列(単一次元)getObjAL()を返しているObject[]ように見えますが、値を選択すると、選択した値が実際には配列であると想定しているように見えますが、そうではないと確信しています。

JList#setListDataオブジェクト配列(Object[])または。のいずれかが必要Vectorです。

代わりにこのようなものを試してください。

jlstPrimitives[i].addListSelectionListener(new ListSelectionListener() {
    @Override
    public void valueChanged(ListSelectionEvent listevt) {
        Jlist objLstTemp = (Jlist) listevt.getSource();
        jlst[1].setListData(new Object[]{objLstTemp.getSelectedValue()}));
    }
});
于 2013-03-05T06:07:07.503 に答える