jList2.setListData(jList1.getSelectedValues());
これを使用して、jlist1 から jlist2 にデータを転送しました。しかし、転送されたデータを jlist1 から削除したいと考えています。なんてことも。
質問する
412 次
2 に答える
1
2つの方法があります
Oracleページでのドラッグドロップチュートリアルを見るには
mouseDraggedでselectedItemを1つのJListから削除し、秒に追加するには、このアイデアにはJavaSwingに関するより良い知識が必要であることに注意してください。
于 2012-08-02T14:52:28.830 に答える
1
最初:getSelectedValues()
非推奨ですgetSelectedValuesList()
。ジェネリックを使用してリストとして取得するために使用します。
次に、JList を作成する前に DefaultListModel を作成して、JList に追加/削除できるようにします。
DefaultListModel<String> model = new DefaultListModel<String>();
DefaultListModel<String> model2 = new DefaultListModel<String>();
JList<String> list1 = new JList<>(model);
JList<String> list2 = new JList<>(model2);
...
for(String s : list1.getSelectedValuesList()){
model2.addElement(s);
model.removeElement(s);
}
リストとモデルへの変更は、イベント ディスパッチ スレッドで実行する必要があることに注意してください。
于 2012-08-02T14:51:23.213 に答える