Objetos em Combobox  XML
Índice dos Fóruns » RIA - Flex, JavaFX e outros
Autor Mensagem
DBR
HelloWorld
[Avatar]

Membro desde: 02/11/2011 11:20:26
Mensagens: 10
Offline

Olá, sou novo no Forum, e iniciante em Flex.
Minha duvida é na parte da programaçao mesmo.

Seguinte, estou populando uma combobox com um ArrayCollection de objetos Professor. Mas nao estou conseguindo pegar o objeto selecionado para gravar no banco.
Tentei de varias formas:
listaProfessor.selectedItem
listaProfessor.selectedIndex
listaProfessor.selectedLabel

tentei um for...nao deu certo, talvez eu tenha feito ele de forma errada.

private function percorreProfessor():Object{
for(var cont: int = 0; cont < listaProfessor.length; cont++ ){
if(addProfessor.labelField == listaProfessor[cont]['nome']){
var objeto:Object = listaProfessor[cont];
}
}
return (objeto);
}

Se puder, preciso de alguma dica. Abraços!
xdraculax
Java Ninja

Membro desde: 12/01/2009 16:12:54
Mensagens: 286
Offline

DBR, não sei como você está atribuindo os professores à essa ComboBox, mas partindo do princípio de que você está obtendo uma lista de professores e colocando essa lista como data provider do ComboBox, a opção do selectedItem já deveria ser o suficiente.

E outra coisa, isso aqui:



deve estar retornando o labelField que o addProfessor está usando (que pode ser "nome", "email") e não o valor de fato da propriedade.
Deveria ser addProfessor[addProfessor.labelField] ?

Outra dúvida é, você manda o objeto selecionado para onde? Java? PHP?

-Atenha-se a resolver o problema, e não criticar opiniões.
-Você percebe que está programando d+, quando está escrevendo identado!
-Não precisa estar certo, basta acreditar.
[WWW]
DBR
HelloWorld
[Avatar]

Membro desde: 02/11/2011 11:20:26
Mensagens: 10
Offline

Sim, selectedItem funciona em um dataGrid, mas não esta pegando na combobox. Estou pegando uma lista de professores (objetos) e carregando ela com o dataprovider.
Estou passando para Java.
DBR
HelloWorld
[Avatar]

Membro desde: 02/11/2011 11:20:26
Mensagens: 10
Offline

populando a combo
<mx:ComboBox x="92" y="135" id="addProfessor" labelField="nome" dataProvider="{listaProfessor}" creationComplete="listarEventCombo()">

pegando ela e passando para gravar no banco:
turma.professor = addProfessor.selectedItem as Professor;

This message was edited 1 time. Last update was at 02/11/2011 18:19:28

xdraculax
Java Ninja

Membro desde: 12/01/2009 16:12:54
Mensagens: 286
Offline

listarEventCombo faz o que?

Realmente, era pra funcionar cara.

O que acontece? Não vai o objeto para o Java? Dá exception?

-Atenha-se a resolver o problema, e não criticar opiniões.
-Você percebe que está programando d+, quando está escrevendo identado!
-Não precisa estar certo, basta acreditar.
[WWW]
DBR
HelloWorld
[Avatar]

Membro desde: 02/11/2011 11:20:26
Mensagens: 10
Offline

Deve ter algum outro problema, SelectedItem esta funcionando em outras funçoes.
Mesmo assim obrigado pela atençao.
AUser
GUJ Master
[Avatar]

Membro desde: 23/10/2008 06:39:07
Mensagens: 1092
Offline

Debuga no Java, ta chegando null la? Provavelmente eh erro na classe, se vc mapeou ela de acordo com o objeto Java, pode estar faltando algum atributo. As vezes da isso. Bota um "public dynamic class" e testa.
DBR
HelloWorld
[Avatar]

Membro desde: 02/11/2011 11:20:26
Mensagens: 10
Offline

Encontrei o erro. era no java. Eu tava com duas combobox nesse form consequentemente eu tinha duas pesquisas no java pra retornar uma lista cada no BD (Professor e Curso). O que Ocorria é que o metodo que eu chamava pra combo de professor estava me mandando uma lista de curso e vice versa. Fiz a inversao no meu SQL e funcionou. Estranho nao ter dado nenhum erro.
 
Índice dos Fóruns » RIA - Flex, JavaFX e outros
Ir para:   
Powered by JForum 2.1.8 © JForum Team