DBComboBox receber o resultado de uma consulta?

Delphi

13/02/2015

Amigos,
Tenho esta situação, o DBComboBox está com as informações do estado, quero fazer uma consulta é trazer a informação selecionada para mostra mais não estou conseguindo.

Agradeço a ajuda.


Style: csDropDownList receber o resultado selecionado
DBComboBox1.Items.IndexOf(dmGenerico.cdsTransportadora.FieldByName('estado').AsString);
Itamar Souza

Itamar Souza

Curtidas 0

Respostas

Ricardo

Ricardo

13/02/2015

Use a propriedade KeyValue.
GOSTEI 0
Itamar Souza

Itamar Souza

13/02/2015

Agradeço Ricardo,
Mais este componente não tem está Propriedade.

att..
GOSTEI 0
Itamar Souza

Itamar Souza

13/02/2015

O problema que vejo é que o DBCOMBOBOX recebe o Style csDropDownList, neste caso quando é você faz a inserção da informação a mesma não aparece, então eu fiz assim:

dbComboemite_uf.Style := csDropDown;
dbComboemite_uf.Text := Generico.cdsClienteFornecedor.FieldByName('estado').AsString;

Agora a informação aparece, mais não tem como altera o style logo apos pois a informação fica em branco.
GOSTEI 0
Renato Rubinho

Renato Rubinho

13/02/2015

Itamar,

Para deixar como csDropDownList, a informação que será exibida no DBComboBox deve fazer parte da lista de itens possíveis para ele.
O que você tem hoje na lista do DBCOmboBox.

Tente:

dbComboemite_uf.Items.Add(Generico.cdsClienteFornecedor.FieldByName('estado').AsString);
dbComboemite_uf.Style := csDropDownList;


depois

dbComboemite_uf.ItemIndex := dbComboemite_uf.Items.Count - 1;

ou

dbComboemite_uf.ItemIndex := dbComboemite_uf.Items.IndexOf(Generico.cdsClienteFornecedor.FieldByName('estado').AsString));

ou

dbComboemite_uf.Text := Generico.cdsClienteFornecedor.FieldByName('estado').AsString;
GOSTEI 0
Itamar Souza

Itamar Souza

13/02/2015

Eu fiz como está no seu exemplo, mais é preciso retira antes o style

dbComboemite_uf.Style := csDropDown;
dbComboemite_uf.Text := Generico.cdsClienteFornecedor.FieldByName('estado').AsString;

Apos isso não é possível adicionar novamente o style pois a informação não permanece.

agradeço!
GOSTEI 0
Renato Rubinho

Renato Rubinho

13/02/2015

Você adicionou o a informação como um item do DBCombo ?
Tente esta sequência que tem que funcionar, senão, posta seu código para podermos verificar:

dbComboemite_uf.Items.Add(Generico.cdsClienteFornecedor.FieldByName('estado').AsString);

dbComboemite_uf.Style := csDropDownList;

dbComboemite_uf.ItemIndex := dbComboemite_uf.Items.IndexOf(Generico.cdsClienteFornecedor.FieldByName('estado').AsString));
GOSTEI 0
POSTAR