Como faço para um ComboBox ter os dados da minha tabela Mysql?
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
Curtidas 0
Melhor post
Marco Antônio
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.
GOSTEI 1
Mais Respostas
Rafael Bosco
08/03/2016
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;
GOSTEI 0