Criar um JOptionPane.ShowInputDialog() com JComboBox

Olá pessoal!

Estou com uma dúvida e gostaria de saber se é possível criar um JOptionPane.ShowInputDialog() com JComboBox? O que existe é um com um campo texto e eu gostaria de fazer com um JComboBox, pois eu queria escolher uma de 4 opções disponíveis e armazenar esse valor numa string.

Nunca fiz nada usando a biblioteca swing e tenho um pouco de dificuldades nessa parte.

Desde já agradeço.

tipo da para te criar uma ação do jcombobox que gera um JOptionPane.ShowInputDialog() ficaria algo ais ou menos assim:

[code]comboBox.addActionListener(new ActionListener() {

		public void actionPerformed(ActionEvent arg0) {

			try {//se eu selecionei algo no jcombobox
				if (comboBox.getSelectedItem() !=null ){
					//gero um joptionpane

JOptionPane.showInputDialog(“Faça algo:”);
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}

		}
	}
	);[/code]

ou tu pode fazer para um item especifico q for selecionado

[code]comboBox.addActionListener(new ActionListener() {

		public void actionPerformed(ActionEvent arg0) {

			try {//se eu selecionei algo no jcombobox
				if (comboBox.getSelectedItem() !=null ){
					if(combobox.getSelectedItem.equals("1 opçaõ da combo"))

//gero um joptionpane
JOptionPane.showInputDialog(“Faça algo:”);
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}

		}
	}
	);[/code]

espero que te ajude!:slight_smile:

tiagofla,

Vc pdoe tentar :

Object[] opcoes = {"Um","Dois","Tres","Quatro"};
Object res = JOptionPane.showInputDialog(null, "Escolha um item" , "Selecao de itens" ,
				JOptionPane.PLAIN_MESSAGE , null ,opcoes,"");

Se nenhuma opção for escolhida no combo res fica com valor null;
O melhor tutorial que conheço : http://download.oracle.com/javase/tutorial/uiswing/components/

1 curtida

luiz_renato,

dessa forma apareceu certinho uma pequena tela com uma combo. O problema que tenho que armazenar um dos valores selecionados (ex: {“Um”,“Dois”,“Tres”,“Quatro”}) em uma string e dessa forma não deu certo. Depois que eu preencher essa string farei umas condições, tipo:

if(“Um”.equals(res)){
executa metodo1;
}
if(“Dois”.equals(res)){
executa metodo2;
}
.
.
.

entendeu? No exemplo que vc me passou o atributo “res” é do tipo Object. Tentei fazer transformando ele em string mais não deu certo.

Blz…ja deu certo aqui. Fiz um cast pra string. Utilizei o exemplo do luiz_renato. Obrigado a todos.