Fórum Como faço para um ComboBox ter os dados da minha tabela Mysql? #547961
08/03/2016
0
Fala galera!
Estou querendo colocar em uma comboBox os dados de uma tabela que tenho no Mysql, tenho uma conexão com FireDac mas não estou sabendo enviar essas informações para minha combobox, alguém pode me ajudar?
Estou querendo colocar em uma comboBox os dados de uma tabela que tenho no Mysql, tenho uma conexão com FireDac mas não estou sabendo enviar essas informações para minha combobox, alguém pode me ajudar?
Felipe Andrade
Curtir tópico
+ 0
Responder
Post mais votado
09/03/2016
Vai um pequeno exemplo. Adapte a sua necessidade.
var x1 : string;
n1 : integer;
ComboBox1.Clear;
while not SuaQuery.Eof
do begin
n1 := SuaQuery.FielByName('campoCodigo').asinteger;
x1 := SuaQuery.FielByName('campoNome').asSTring;
lixo := formatFloat( '000000' , n1 );
Lixo := lixo
+ ' '
+ x1;
ComboBox1.Items.Add( lixo );
SuaQuery.Next;
end;
ComboBox1.ItemIndex := 0; // selecionando o primeiro da lista
Espero que ajude
Abc.
var x1 : string;
n1 : integer;
ComboBox1.Clear;
while not SuaQuery.Eof
do begin
n1 := SuaQuery.FielByName('campoCodigo').asinteger;
x1 := SuaQuery.FielByName('campoNome').asSTring;
lixo := formatFloat( '000000' , n1 );
Lixo := lixo
+ ' '
+ x1;
ComboBox1.Items.Add( lixo );
SuaQuery.Next;
end;
ComboBox1.ItemIndex := 0; // selecionando o primeiro da lista
Espero que ajude
Abc.
Marco Antônio
Responder
Gostei + 1
Mais Posts
09/03/2016
Rafael Bosco
Crie uma function que retorna uma TList<TClass> referente a consulta no banco de dados, vou colocar um exemplo referente a funções de funcionário de uma empresa:
Agora no Form que tem o combobox, você coloca no evento, ONSHOW ou ONCREATE, ou onde você necessitar:
function ListaFuncoes: TList<TFuncao>; //não esqueça de colocar na uses da sua unit System.Generics.Collections;
const
SQLConsulta: String = 'SELECT * FROM TFUNCOES';
var
Funcao: TFuncao;
begin
Result := TList<TFuncao>.Create;
try
fQuery.SQL.Clear;
fQuery.SQL.Add(SQLConsulta);
fQuery.Open;
if not fQuery.IsEmpty then
begin
while not fQuery.Eof then
begin
Funcao := TFuncao.Create;
Funcao.Descricao := fQuery.FieldByName('DESCRICAO').AsString;
Result.Add(Funcao);
fQuery.Next;
end;
end
except
Result.Free;
raise;
end;
end;
Agora no Form que tem o combobox, você coloca no evento, ONSHOW ou ONCREATE, ou onde você necessitar:
procedure ListaFuncoes;
var
Funcao: TFuncao;
ListaFuncoes: TList<TFuncao>;
I: System.Integer;
begin
Funcao := TFuncao.Create;
ListaFuncoes := Funcao.ListaFuncoes;
FreeAndNil(Funcao);
try
if ListaFuncoes.Count > 0 then
begin
ComboBox.Items.Clear;
for I := 0 to ListaFuncoes.Count - 1 do
begin
Funcao := ListaFuncoes[I].Items;
ComboBox.Items.Add(Funcao.Descricao);
FreeAndNil(Funcao);
end;
end;
finally
FreeAndNil(ListaFuncoes);
end;
end;
Responder
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)