2011-06-02 34 views
0

問題是,當文件運行JList已經做出自己的選擇,所以當用戶做出選擇時,列表不再處於正確的位置。最終,我想使這是一個遞歸方法,並讓用戶選擇一個單詞,並將其從列表中刪除,直到沒有剩下的單詞...有誰知道如何設置什麼自動選擇將爲空?如何擺脫JList的預選

import java.util.ArrayList; 
import java.io.*; 

public class Arg{ 

    public static void main(String[] args) 
    { 
     callArray(); 
    } 

    public static void callArray() { 

     final JFrame frame = new JFrame(); 
     JPanel panel = new JPanel(); 
     final ArrayList alist = new ArrayList(); 

     alist.add("one"); 
     alist.add("two"); 
     alist.add("three"); 
     alist.add("four"); 
     alist.add("five"); 
     alist.add("six"); 
     alist.add("seven"); 
     alist.add("eight"); 

     final JList blist = new JList(alist.toArray()); 
     blist.clearSelection(); 

     JScrollPane scroll = new JScrollPane(blist); 
     panel.add(blist); 
     frame.add(panel); 
     frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 
     frame.setSize(100, 100); 
     frame.setVisible(true); 

     final PVariable varPass = new PVariable(); 

     System.out.println(alist); 

     blist.addListSelectionListener(new ListSelectionListener() { 
     public void valueChanged(ListSelectionEvent e) { 
      varPass.selected = blist.getSelectedIndex(); 
      System.out.println("The value selected is " + alist.get(varPass.selected) + " " + varPass.selected); 
      frame.setVisible(false); 
     } 
     }); 

     alist.remove(varPass.selected); 

     System.out.println(alist); 
    } 
} 

class PVariable { 
    static int selected; 

    public PVariable() { } 
} 
+0

你能格式化你的代碼嗎?這有點難以閱讀。 – Kyle 2011-06-02 20:30:24

+0

更好嗎? – Jayden 2011-06-02 20:46:51

回答

0

有誰知道如何設置任何autoselection是怎麼回事爲空?

setSelectedIndex(-1);