Tenho o código abaixo rodando perfeitamente, mas precinho de uma imensa ajuda…
Quero que quando seja selecionado o ChoiceGroup pelo usuário o valor seja diferente do da exibição. ou seja o usuário escolherá um nome mas o metodo deverá retorna outro valor, que seria o ID = emissor[0].
como faço?
public ChoiceGroup getEmissor() {
if (Emissor == null) {
// write pre-init user code here
Emissor = new ChoiceGroup("Emissor", Choice.POPUP);
Emissor.setPreferredSize(-1, -1);
Emissor.setLayout(ImageItem.LAYOUT_DEFAULT);
Emissor.setFitPolicy(Choice.TEXT_WRAP_DEFAULT);
Emissor.setSelectedFlags(new boolean[] { });
// write post-init user code here
//Emissor.append("OndaLivre", null);
Manipulacao_TransacaoService ws = new Manipulacao_TransacaoService_Stub();
String str=null;
try {
str = ws.selecionarEmissor();
} catch (RemoteException ex) {
ex.printStackTrace();
}
System.out.println("str="+str);
String pares[] = split(str,":");
System.out.println("pares.length="+pares.length);
for (int i = 0; i < pares.length; i++) {
String string = pares[i];
String emissor[] = split(string,",");
Emissor.append(emissor[1], null); // <-- aqui quero que o real valor de Emissor seja emissor[0], mas para exibição emissor[1]
}
}
return Emissor;
}
Cara o que quero é o seguindo.
minha busca no banco traz um coleção com duas colunas, id_emissor e nome_emissor.
Bom o usuário tem que ver o nome_emissor no sistema, para selecionalo. porém quando ele selecioná-lo, quero que o valor do append seja o id_emissor.
ou seja que um choicegroup que a apresentação seja nome, mas o valor seja o id.
existe algum parametro para isso?
segue o código no formato:
public ChoiceGroup getEmissor() {
if (Emissor == null) {
// write pre-init user code here
Emissor = new ChoiceGroup("Emissor", Choice.POPUP);
Emissor.setPreferredSize(-1, -1);
Emissor.setLayout(ImageItem.LAYOUT_DEFAULT);
Emissor.setFitPolicy(Choice.TEXT_WRAP_DEFAULT);
Emissor.setSelectedFlags(new boolean[] { });
// write post-init user code here
//Emissor.append("OndaLivre", null);
Manipulacao_TransacaoService ws = new Manipulacao_TransacaoService_Stub();
String str=null;
try {
str = ws.selecionarEmissor();
} catch (RemoteException ex) {
ex.printStackTrace();
}
System.out.println("str="+str);
String pares[] = split(str,":");
System.out.println("pares.length="+pares.length);
for (int i = 0; i < pares.length; i++) {
String string = pares[i];
String emissor[] = split(string,",");
Emissor.append(emissor[1], null);
}
}
return Emissor;
}
Cara, eu faria o seguinte
Criaria uma classe que estende de ChoicceGroup, criaria um atributo de Vector chamado chaves, e um método adicionar(Object valor, Object chave).
No método adicionar vc adiciona a chave no seu atributo chaves, e dá um append no choice.
Cara, te dei o código, é só engoli, mas ñ se acostuma :evil: :lol:
public class MeuChoice extends ChoiceGroup {
private Vector chaves;
//construtor de MeuChoice, que chama o construtor de Choice
public MeuChoice(String label, int choiceType) {
super(label, choiceType);
chaves = new Vector();
}
//construtor de MeuChoice, que chama o construtor de Choice
public MeuChoice(String label, int choiceType, String[] elements, Image[] imgElements) {
super(label, choiceType, elements, imgElements);
chaves = new Vector();
}
public void addElemento(String text, Image img, Object chave) {
//faz a consistencia...
append(text, img);
chaves.addElement(chave);
}
public Object getChave(int posicao) {
return chaves.elementAt(posicao);
}
}
Senhores membros do conselho, tô engatinhando em J2ME,
tem como fazer um ChoiceGroup pesquisavel, ou seja, capturar o que for digitado e ir filtrando???
Agradeço a atenção dispensada.
[quote=j0nny]Cara, te dei o código, é só engoli, mas ñ se acostuma :evil: :lol:
[code]
public class MeuChoice extends ChoiceGroup {
private Vector chaves;
//construtor de MeuChoice, que chama o construtor de Choice
public MeuChoice(String label, int choiceType) {
super(label, choiceType);
chaves = new Vector();
}
//construtor de MeuChoice, que chama o construtor de Choice
public MeuChoice(String label, int choiceType, String[] elements, Image[] imgElements) {
super(label, choiceType, elements, imgElements);
chaves = new Vector();
}
public void addElemento(String text, Image img, Object chave) {
//faz a consistencia...
append(text, img);
chaves.addElement(chave);
}
public Object getChave(int posicao) {
return chaves.elementAt(posicao);
}
}
[/code][/quote]
Jonny,
boa noite, vc sabe me como posso implementar o ChoiceGroup pesquisavel???
tipo:
Ex:
Texto 1
Texto 2
String 1
String 2
Tá Doido!
Você digita “T” e as Strings somem, ficando só o que começa com “T”, você digita “e” e o “Tá Doido” some, ficando só o que começa com “Te”.
Esse filtro.