Fórum Inserir dados dentro de ListBox #236498
07/06/2004
0
Gostaria de fazer uma pesquisa por nome e se tiver esse nome inserir no listBox
tentei algo assim, mais o que faltou?
var a: String; begin l1.Caption:=empresa; l2.Caption:=processo; ADOQuery1.SQL.Clear; a:=´Select * From PROCESSO Where NomedoProcesso="´+processo+´" AND NomeDaEmpresa="´+empresa+´"´; ADOQuery1.SQL.Add(a); ADOQuery1.Close; ADOQuery1.Open; while not ADOQuery1.Eof do begin // Aqui que devo adicionar as strings para o List Box??? ADOQuery1.Next; end;
Alguém me ajuda?
Abraços
Redoctober
Curtir tópico
+ 0Posts
07/06/2004
Paulo_amorim
ListBox.Items.Add( SuaString )
onde sua String são os dados da Query.
Para pegar os dados da query, utilize
Query.FieldByName(´campo´).AsString;
Espero que ajude
Ate+
Gostei + 0
07/06/2004
Redoctober
O que errei?
Gostei + 0
07/06/2004
Paulo_amorim
Não é AddItem mas sim
Listbox1.Items.Add(...);
Tente denovo :D
Espero que funcione
Até+
Gostei + 0
07/06/2004
Redoctober
Agora deu certo!!!!
Só que resolvi colocar um DBGrid no lugar de um ListBox, O problema é que o DBGrid tem duas colunas, só não estou sabendo apontar para cada coluna... Veja o meu código abaixo:
procedure TfrmListaProblemas.FormShow(Sender: TObject); var a: String; nome,status: string; begin empresa:=l1.Caption; processo:=l2.Caption; ADOQuery1.SQL.Clear; a:=´Select * From PROBLEMAS Where Processo="´+processo+´" AND Empresa="´+empresa+´"´; ADOQuery1.SQL.Add(a); ADOQuery1.Close; ADOQuery1.Open; while not ADOQuery1.Eof do begin nome:=ADOQuery1.FieldByName(´NomedoProblema´).AsString; status:=ADOQuery1.FieldByName(´Status´).AsString; DBGrid1.Columns.Items.:=nome; ADOQuery1.Next; end;
Como eu faço?
Abraco
Gostei + 0
07/06/2004
Fabio.hc
[b:c07d4062c7] DBGrid1.DataSource:=DataSource1;
DataSource1.DataSet:=ADOQuery1;[/b:c07d4062c7]
procedure TfrmListaProblemas.FormShow(Sender: TObject); var a: String; nome,status: string; begin empresa:=l1.Caption; processo:=l2.Caption; DBGrid1.DataSource:=DataSource1; DataSource1.DataSet:=ADOQuery1; ADOQuery1.SQL.Clear; a:=´Select * From PROBLEMAS Where Processo="´+processo+´" AND Empresa="´+empresa+´"´; ADOQuery1.SQL.Add(a); ADOQuery1.Close; ADOQuery1.Open; end;
Gostei + 0
08/06/2004
Paulo_amorim
Olá
Só para lembrar, isso também pode ser feito em tempo de desenvolvimento mudando as propriedades dos componentes dbgrid e datasource no object inspector
Até+
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)