Originariamente inviato da varehol
a mio parere direi di si che hai scritto in modo contorto

io sono all' inizio della programmazione in JAVA e vorrei capirci qualche cosa

:

VVoVe:

VVoVe:
Ok, provo a spiegarmi 
Quello che avevo in mente era di creare una serie di associazioni (chiave, valore) in cui la chiave è una stringa ed il valore un pannello.
Nel tuo caso avresti due chiavi, "Chat" e "Generale" a cui sono legati i pannelli.
(butto giù un po' di codice ma non ho tempo di testarlo):
codice:
JPanel generalPanel = new JPanel();
...
JPanel chatPanel = new JPanel();
...
TreeMap<String, JPanel> map = new TreeMap<String, JPanel>();
map.put("Generale", generalPanel);
map.put("Chat", chatPanel);
...
Da qualche parte avrai il tuo oggetto JList:
codice:
Vector<String> data = new Vector<String>();
data.add("Generale");
data.add("Chat");
JList list = new JList(data);
...
...
list.addListSelectionListener(new ListSelectionListener() {
public void valueChanged(ListSelectionEvent e) {
String selectedString = "" + list.getSelectedValue();
updatePanel(selectedString);
}
});
Ed infine il metodo che aggiorna il pannello a seconda della selezione:
codice:
JSplitPane split ...
public void updatePanel(String key) {
split.setRightComponent(map.get(key));
}
Il codice l'ho scritto di getto, non ho verificato eventuali errori o se i metodi sono esatti. In linea generale mi sembra corretto :master: