Componentes Swing JComboBox

Olá turma!
Sou muito novo aqui e também com a linguagem Java, espero que eu não dê muito trabalho.

Vamos lá:

Fiz um programinha muito bobo ao qual não faz sentido colocar aqui, criei um JComboBox baseado nos itens de um vetor, exemplo:

public static String look[] = new String[4]; look[0]="Metal cromado"; look[1]="Windows"; look[2]="Chapa de aço"; look[3]="Windows Classic"; lookAndFeel = new JComboBox(look);

Agora na mesma classe só que em outro metodo, eu quero colocar os nomes dos itens do JComboBox em inglês, a idéia que tive foi repetir essa mesma parte mas trocando os nomes dos vetores, vi que ficaria estranho isto, mas tentei, não deu certo. Então pensei: se eu repetir isso de novo eu vou estar reinstaciando o objeto, então eu precisaria antes desinstanciar o objeto? Me perdoem por tanta ignorância!

Bom fiz um aqui so pra vc ter uma ideia, que voce vai precisar e do

objCombo.addItem("Metal cromado");//ADICIONANDO PRIMEIRO COMBO POSICAO 0 minhaAparencia[0] = "javax.swing.plaf.metal.MetalLookAndFeel";//ALIMENTANDO VETOR POSICAO 0 objCombo.addItem("Windows");//ADICIONANDO PRIMEIRO COMBO POSICAO 1 minhaAparencia[1] = "com.sun.java.swing.plaf.windows.WindowsLookAndFeel";//ALIMENTANDO VETOR POSICAO 1 objCombo.addItem("Nimbus");//ADICIONANDO PRIMEIRO COMBO POSICAO 2 minhaAparencia[2] = "com.sun.java.swing.plaf.nimbus.NimbusLookAndFeel";//ALIMENTANDO VETOR POSICAO 2

nesse na ordem q o combo ta ele vai setar aquela aparecencia q o cara selecionou
e agora ele vai fazer atualizacao da aparencia baseado no combo que o cara selecionou olha so

minhaAparencia é o Vetor como todas as aparencia e o objCombo.getSelectedIndex() retorna um int em que posicao o do combo esta selecionada então como fiz, o combo na posicao 0 é o metal, na posicao 1 é o windows, e na 3 o nimbus, logo abaixou o codigo completo

try { UIManager.setLookAndFeel(minhaAparencia[objCombo.getSelectedIndex()]); } catch (ClassNotFoundException ex) { System.out.println(ex); } catch (InstantiationException ex) { System.out.println(ex); } catch (IllegalAccessException ex) { System.out.println(ex); } catch (UnsupportedLookAndFeelException ex) { System.out.println(ex); } javax.swing.SwingUtilities.updateComponentTreeUI( this ) ; }

agora a classe completa ja funcionando so lembrando pro nimbus funcionar tem que ter o java update 10


import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.JComboBox;
import javax.swing.JFrame;
import javax.swing.UIManager;
import javax.swing.UnsupportedLookAndFeelException;

public class teste extends JFrame implements ActionListener{
	
	
	String[] minhaAparencia = new String [3];
	
	JComboBox objCombo = new JComboBox();
	
	public teste(){
		setLocation(50, 50);
		setTitle("teste");
	    setSize(800, 600);
		setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		setLayout(null);
		
		
		getContentPane().add(objCombo).setBounds(10, 10, 200, 30);
		objCombo.addItem("Metal cromado");
		minhaAparencia[0] = "javax.swing.plaf.metal.MetalLookAndFeel";
		objCombo.addItem("Windows");
		minhaAparencia[1] = "com.sun.java.swing.plaf.windows.WindowsLookAndFeel";
		objCombo.addItem("Nimbus");
		minhaAparencia[2] = "com.sun.java.swing.plaf.nimbus.NimbusLookAndFeel";
		objCombo.addActionListener(this);
	}
	
	
	public static void main(String args[]){
		JFrame obj = new teste();
		obj.setVisible(true);
		
	}


	@Override
	public void actionPerformed(ActionEvent e) {
		if(e.getSource() == objCombo){
			try {
                UIManager.setLookAndFeel(minhaAparencia[objCombo.getSelectedIndex()]);
            } catch (ClassNotFoundException ex) {
                System.out.println(ex);
            } catch (InstantiationException ex) {
                System.out.println(ex);
            } catch (IllegalAccessException ex) {
                System.out.println(ex);
            } catch (UnsupportedLookAndFeelException ex) {
                System.out.println(ex);
            }
javax.swing.SwingUtilities.updateComponentTreeUI( this )  ;
		}
		
	}
	

}

espero que tenha entendido a logica

vlw