Pessoal, preciso pegar a descrição de um combobox, ou seja, quando eu seleciono um item no combobox ele me mostra a descrição daquele item na TextArea,Aqui esta o meu codigo.
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.BorderLayout;
import java.awt.Container;
import javax.swing.*;
import javax.swing.JFrame;
import javax.swing.JTextArea;
import javax.swing.JScrollPane;
import javax.swing.JButton;
public class MostrarEventosDaComboBox extends JFrame implements ActionListener
{
private Container conteinerPrinc,conteiner;
private JComboBox jcEscolherCor;
private JTextArea jtaDetalhesFuncionario;
JScrollPane jscBarraDeRolagem;
private String nomeDeintes[]= {“Cordenador”,“Gestor De Sala”,“Supervisor”,“Assistente”};
private String descricao[]={“Responsavel por todos os trabalhadores da operacao”,
“Gestor de sala resposavel a enviar email das situacoes que ocorrem na sala de operacao”,
“Responsavel pelo assistente da sala de operacao”,“Responsavel pelas ligacoes dos clientes”};
String demo = “This”;
MostrarEventosDaComboBox()
{
conteinerPrinc = getContentPane();
//Box box = Box.createHorizontalBox();
conteiner = new JPanel();
conteiner.setLayout(new BorderLayout());
conteinerPrinc.setLayout(new BorderLayout());
jcEscolherCor = new JComboBox(nomeDeintes);
jtaDetalhesFuncionario = new JTextArea();
jscBarraDeRolagem = new JScrollPane(jtaDetalhesFuncionario,JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED,JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED);
conteiner.add(jcEscolherCor,BorderLayout.NORTH);
conteiner.add(jscBarraDeRolagem,BorderLayout.CENTER);
conteinerPrinc.add(conteiner);
jcEscolherCor.addActioListener(this);
{
public void actionPerformed(ActionEvent e)
{
int valor=getSelectedItem();
for(int i=0;i<4;i++)
{ if(valor!=-1)
append(descricao[valor]);
}
}
}
}
}
Clase de teste
import javax.swing.JFrame;
public class TesteMostrarComboBox extends JFrame
{
public static void main(String args[])
{
MostrarEventosDaComboBox configJanela = new MostrarEventosDaComboBox();
configJanela.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
configJanela.setSize(300,250);
configJanela.setVisible(true);
}
}
dei uma organizada +ou- no código porque estava meio confuso,
acho que o que vc quer seria isso:
import java.awt.event.*;
import java.awt.BorderLayout;
import java.awt.Container;
import javax.swing.*;
public class MostrarEventosDaComboBox extends JFrame
{
private Container conteinerPrinc = getContentPane();
private Container conteiner = new JPanel();
private JTextArea jtaDetalhesFuncionario = new JTextArea();
private JScrollPane jscBarraDeRolagem = new JScrollPane(jtaDetalhesFuncionario,JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED,JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED);
// private JComboBox jcEscolherCor;
private String[] nomeDeintes = {"Cordenador","Gestor De Sala","Supervisor","Assistente"};
private String[] descricao = {
"Responsavel por todos os trabalhadores da operacao",
"Gestor de sala resposavel a enviar email das situacoes que ocorrem na sala de operacao",
"Responsavel pelo assistente da sala de operacao",
"Responsavel pelas ligacoes dos clientes"
};
String demo = "This";//não entendi pra que essa string
private JComboBox jcEscolherCor = new JComboBox(nomeDeintes);
public static void main(String[] args) {
new MostrarEventosDaComboBox().setVisible(true);
}
MostrarEventosDaComboBox()
{
setDefaultCloseOperation(EXIT_ON_CLOSE);
setSize(300,250);
//Essas duas linhas são pra quebra automática(pro seu texto não ficar só uma linha gigante)
jtaDetalhesFuncionario.setLineWrap(true);
jtaDetalhesFuncionario.setWrapStyleWord(true);
//Essa linha inicia o jtextarea com o texto de indice 0
jtaDetalhesFuncionario.setText(descricao[0]);
// MostrarEventosDaComboBox configJanela = new MostrarEventosDaComboBox();
//Box box = Box.createHorizontalBox();
conteiner.setLayout(new BorderLayout());
conteinerPrinc.setLayout(new BorderLayout());
conteiner.add(jcEscolherCor,BorderLayout.NORTH);
conteiner.add(jscBarraDeRolagem,BorderLayout.CENTER);
conteinerPrinc.add(conteiner);
//é mais fácil adicionar o listener desse jeito
jcEscolherCor.addItemListener(new ItemListener() {
public void itemStateChanged(ItemEvent e) {
if (e.getStateChange() == ItemEvent.SELECTED) {
Object item = e.getItem();
jtaDetalhesFuncionario.setText(descricao[jcEscolherCor.getSelectedIndex()]);
}
}
});
{
//do jeito abaixo fica mais complicado
// public void actionPerformed(ActionEvent e)
// {
// int valor=getSelectedItem();
// for(int i=0;i<4;i++)
// { if(valor!=-1)
// append(descricao[valor]);
// }
// }
}
}
}