Fórum Pesquisa em uma combobox #300991
27/10/2005
0
1-Bradesco
2-Itau
3-Unibanco
...
Representa o Codigo e a descrição da tabela Banco. Preciso construir agora uma rotina inversa que faça o seguinte:
Quando eu selecionar no grid(evento OnCellClick), caso a coluna codbanco esteja, por exemplo 1, então me mostre no Combo 1-Bradesco, se tiver 3, me mostre 3-Unibanco e assim por diante. Desde já grato!!!
Paulo
Curtir tópico
+ 0Posts
27/10/2005
Guilherme
vc vai selecionar no grid e vai aparecer no combo box é isso ???
si for segue mais ou menos esse exemplo
ComboBox1.ItemIndex:=ListBox1.Items.IndexOf(´TEXTO!!!!´);
Gostei + 0
27/10/2005
Paulo
Como uso SP para inserir, alterar e excluir, preciso passar os parâmetros das SP´s, razão pela qual, não uso componentes ligados a um TDataSource, mas sim componentes simples com propriedade Text e etc... Para incluir blz, porem na hora de Alterar, por exemplo, o usuário vai selecionar o registro a ser alterado. Ele faz a consulta, carrega a consulta no Grid e seleciona no mouse(OnCellClick). No momento que ele selecionar, deverá ser carregado em cada edit, por exmplo, os valores da tabela, assim: EditNumConta=CampoNumConta, EditValor=CampoValor e assim por diante. Acontece que o campo Banco está numa combobox e na tabela de cheque, o codigo somente. Por isso que quando eu clicar no registro, ele faça uma pesquisa na combo, encontra quem tem esse valor e mostre na prop text da combo. Para gravar no insert eu faço:
Só queria o inverso agora, mas nada.
Claro que o código acima é um fragmento
Gostei + 0
28/10/2005
Njuniorba
while not Query1.Eof do
begin
ComboBox1.Items.Add(Query1.FieldByName(´CODIGO´).AsString + ´- ´ + Query1.FieldByName(´NOME_BANCO´).Value);
Query1.Next;
end;
end;
Gostei + 0
28/10/2005
Paulo
Gostei + 0
28/10/2005
Njuniorba
nao entendi ainda hehehe antes do hifen estao os numeros 1-, 2-
Gostei + 0
28/10/2005
Michael
A dica do colega g_borges procede e é uma solução. Porém, há ainda outra mais simples: se vc adicionar na ComboBox os bancos na mesma ordem em que seus códigos os representam (por exemplo, se o código do Bradesco é 1, então adicione ele primeiro; se o Itaú for 2, em segundo, etc), então para selecionar um basta isso:
ComboBox.ItemIndex := StrToInt(CodigoBanco) - 1;
CodigoBanco vc pode pegar via Fields do DataSet associado. E se este field for do tipo integer, nem precisa da função StrToInt.
[]´s
Gostei + 0
28/10/2005
Paulo
O campo codigo tem seu valor proveniente de um gerador, por meio de uma trigger.
Gostei + 0
29/10/2005
Michael
Então use a dica do g_borges, usando [b:363a48c255]IndexOf[/b:363a48c255].
[]´s
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)