2013-02-24 165 views
0

如何表示多个字符串行代码,例如,如果我已经创建了jlist并使用String来复制存储在字符串中的值以显示在Jtextfield上,我可以创建另一个字符串行在另一个Jtextfield中显示电影价格,同时选择jList值,例如:在Jlist中,我选择了一个组件,它将显示Jtextfield中的组件以及另一个jTextfield中的价格?如何在jList中存储多个字符串

jList99.setModel(new AbstractListModel() { 

     String[] strings = {"mouse,keyboard"}; 
     public int getSize() { return strings.length; } 
     public Object getElementAt(int i) { return strings[i]; } 
    }); 
    jList99.addListSelectionListener(new ListSelectionListener() { 
     public void valueChanged(ListSelectionEvent evt) { 
      jList1ValueChanged(evt);   
     } 
    }); 


private void jList1ValueChanged(ListSelectionEvent evt) {  

    if(!jList99.getValueIsAdjusting()) 
    { 
      jTextField9.setText((String) jList99.getSelectedValue()); 
    } 
} 
+1

对于一个简单的解决方案,你可以包装你的String HTML – MadProgrammer 2013-02-24 22:03:00

回答

2

您的JList不必包含简单的String对象。您可以通过使用自定义的对象,如这个实现自己的目标:

class MovieInfo { 
    private String name; 
    private String price; 

    // insert appropriate getters and setters here 

    public String toString() { 
     return name + " " + price; 
    } 
} 

这些对象将显示JList中他们的toString的价值,但你必须在名称和价格的直接访问,当你调用(MovieInfo) getSelectedValue()。