| Exibir mensagem anterior :: Exibir próxima mensagem |
| Autor |
Mensagem |
wurilo Novato

Registrado: Sexta-Feira, 1 de Outubro de 2010 Mensagens: 28
|
Enviada: Qua Out 13, 2010 3:59 pm Assunto: Resultado de query em ComboBox |
|
|
Boa tarde Pessoal...
estou tentado fazer com que meu combobox receba o resultado de uma query, sei que da pra fazer com DBLookupComboBox, porém antes de saber disso comecei a fazer com combobox, porém não esta retornando nenhum valor no combobox, alguem sabe me informar o pq (só pra saber onde estou errando)? , segue:
| Código: | procedure Tform_consultas.ComboBox1click(Sender: TObject);
begin
SQLQuery_auxiliar.Close;
SQLQuery_auxiliar.SQL.Text := 'select distinct NOME_ALUNO from participantes';
SQLQuery_auxiliar.Open;
SQLQuery_auxiliar.First;
while not SQLQuery_auxiliar.Eof do
begin
//ComboBox1.Items.Add(SQLQuery_Auxiliar.fields[1].AsString);
ComboBox1.Items.Add(SQLQuery_Auxiliar.fieldbyName('NOME_ALUNO').AsString);
SQLQuery_auxiliar.Next;
end;
end; |
Desde já agradeço
abços |
|
| Voltar ao Topo |
|
 |
felipecaputo Colaborador


Registrado: Quinta-Feira, 13 de Mai de 2010 Mensagens: 1719 Localização: Florianópolis / SC
|
Enviada: Qua Out 13, 2010 4:25 pm Assunto: |
|
|
tente assim, acho q o erro está no index, deve ser 0 e não 1
| Código: | procedure Tform_consultas.ComboBox1click(Sender: TObject);
begin
SQLQuery_auxiliar.Close;
SQLQuery_auxiliar.SQL.Text := 'select distinct NOME_ALUNO from participantes';
SQLQuery_auxiliar.Open;
SQLQuery_auxiliar.First;
while not SQLQuery_auxiliar.Eof do
begin
ComboBox1.Items.Add(SQLQuery_Auxiliar.fields[0].AsString);
SQLQuery_auxiliar.Next;
end;
end; |
_________________ if Post.State = psResolvido then
Post.Caption := Post.Caption + ' [RESOLVIDO]';
_____________________________________________
O único homem que está isento de erros, é aquele que não arrisca acertar. Albert Einstein |
|
| Voltar ao Topo |
|
 |
wurilo Novato

Registrado: Sexta-Feira, 1 de Outubro de 2010 Mensagens: 28
|
Enviada: Qua Out 13, 2010 6:02 pm Assunto: |
|
|
E ai FelipeCaputo blz?
Infelizmente não deu certo, não retornou nenhum valor.
com DBLookupComboBox, ele traz todos os dados do campo da tabela e no caso ele fará parte tbm de uma pesquisa por cidades, no caso ele traz cidades repetidas.
se tiver outra solução, agradeço. |
|
| Voltar ao Topo |
|
 |
wurilo Novato

Registrado: Sexta-Feira, 1 de Outubro de 2010 Mensagens: 28
|
Enviada: Qua Out 13, 2010 6:07 pm Assunto: |
|
|
FelipeCaputo...mais uma vez obrigado
o código estava certo, o problema era onde colocar ele..rsrsrsrs
esta no onclick do ComboBox, agora coloquei no onShow do form e deu certo, vlw.. desculpe o incômodo. |
|
| Voltar ao Topo |
|
 |
felipecaputo Colaborador


Registrado: Quinta-Feira, 13 de Mai de 2010 Mensagens: 1719 Localização: Florianópolis / SC
|
Enviada: Qua Out 13, 2010 6:15 pm Assunto: |
|
|
Organizando melhor o código ficaria assim:
| Código: | procedure Tform_consultas.ComboBox1click(Sender: TObject);
begin
SQLQuery_auxiliar.Close;
SQLQuery_auxiliar.SQL.Text := 'select distinct NOME_ALUNO from participantes';
SQLQuery_auxiliar.Open;
SQLQuery_auxiliar.First;
Comobox1.Items.Clear;
If sqlquery.eof then
raise exception.Create('Nenhum Aluno Encontrado.');
while not SQLQuery_auxiliar.Eof do
begin
ComboBox1.Items.Add(SQLQuery_Auxiliar.fields[0].AsString);
SQLQuery_auxiliar.Next;
end;
end; |
pq o código está certo. As únicas razões para poder não inserir nenhum item são:
- a query está vazia
- vc está limpando o combobox em outro lugar _________________ if Post.State = psResolvido then
Post.Caption := Post.Caption + ' [RESOLVIDO]';
_____________________________________________
O único homem que está isento de erros, é aquele que não arrisca acertar. Albert Einstein |
|
| Voltar ao Topo |
|
 |
felipecaputo Colaborador


Registrado: Quinta-Feira, 13 de Mai de 2010 Mensagens: 1719 Localização: Florianópolis / SC
|
Enviada: Qua Out 13, 2010 6:18 pm Assunto: |
|
|
blz, Então ok!
Precisando estamos as ordens _________________ if Post.State = psResolvido then
Post.Caption := Post.Caption + ' [RESOLVIDO]';
_____________________________________________
O único homem que está isento de erros, é aquele que não arrisca acertar. Albert Einstein |
|
| Voltar ao Topo |
|
 |
|