Fórum Como colocar o ComboBox quenem o Interner Explores Delhi 7 #325296

13/07/2006

0

Como colocar o ComboBox quenem o Interner Explores Delhi 7

Já coloquei as propriedade AutoComplete e AutoDropDown para true, mas o combobox abre pequeneninho e e não aparece nada............. do Banco de Dados..........


Supermax

Supermax

Responder

Posts

14/07/2006

Night_man

eu completa com os valores que estao no items dele...


Responder

Gostei + 0

26/11/2006

Max2006

Como colocar o ComboBox quenem o Interner Explores Delhi 7 Já coloquei as propriedade AutoComplete e AutoDropDown para true, mas o combobox abre pequeneninho e e não aparece nada............. do Banco de Dados..........




Eu coloquei o código asseguir nos eventos do combobox, mas oque está acontecendo..., quando eu digito VEZ, aparece inverso assim ´ZEV´ mais os dados do banbo de dados, o que eu quero que fique selecioando e completando quenem no Internet Explorer... alguém pode me ajudar, estou utilizando Delphi 7 com Firebird....



procedure T_T_I_P_P.DBComboBox4KeyDown(Sender: TObject; var Key: Word; Shift: TShiftState); Var ContadorDeRegistros:Integer; begin if IBTable1.RecordCount >= 1 then Begin ContadorDeRegistros:= IBTable1.RecordCount; DBComboBox4.Items.Clear; IBTable1.First; Repeat DBComboBox4.Items.Add(IBTable1.FieldByName(´NOME´).AsString); ContadorDeRegistros:= ContadorDeRegistros-1; if ContadorDeRegistros >=1 Then Begin IBTable1.Next; End; until ContadorDeRegistros = 0; End; end; procedure T_T_I_P_P.DBComboBox4KeyPress(Sender: TObject; var Key: Char); begin if (Key = #13) then Begin if IBTable1.RecordCount >= 1 Then Begin if IBTable1.Locate(´NOME´,DBComboBox4.text,[])= False tHEN Begin IBTable1.Insert; IBTable1.FieldByName(´NOME´).AsString:= DBComboBox4.text; IBTable1.Post; ShowMessage(´Gravou...´); End End Else Begin IBTable1.Insert; IBTable1.FieldByName(´NOME´).AsString:= DBComboBox4.text; IBTable1.Post; ShowMessage(´Primeira Informação...´); End; End; end;



Responder

Gostei + 0

27/11/2006

Max2006

Alguém pode me ajudar nesse assunto...?


Responder

Gostei + 0

27/11/2006

Thiago Vidal

amigo, desculpa falar mas esse seu código tá bem feinho hein?

bom, mas críticas à parte, vamos à ajuda... para utilizar o recurso de AutoCompletar do ComboBox, vc só precisa definir como True as propriedades AutoComplete e AutoDropDown, e vc deve preencher TODOS os dados na hora que a janela é exibida, e o próprio windows se encarregará de filtrar os registros conforme eles forem sendo mostrados.

segue um exemplo:
procedure TForm1.FormShow(Sender: TObject);
begin
  with DataSet do
  begin
    First;
    while not Eof do
    begin
        ComboBox1.Items.Add(Fields[0].AsString);
        Next;
    end;
  end;  
end;


esta rotina preencherá todos o ComboBox com todos os items do seu DataSet, agora assim que vc começar a digitar o windows se encarrega de ir completando o texto automaticamente.

espero ter ajudado!
boa sorte!


Responder

Gostei + 0

27/11/2006

Adriano_servitec

Como colocar o ComboBox quenem o Interner Explores Delhi 7 Já coloquei as propriedade AutoComplete e AutoDropDown para true, mas o combobox abre pequeneninho e e não aparece nada............. do Banco de Dados..........

Olah amigo, nao sei se ti ajuda, mais eu uso para trazer todos os dados do banco dentro de um combo assim
procedure TForm7.FormShow(Sender: TObject);
var
 c: string;
begin
with dm.qtbplano do
  begin
    close;
    sql.clear;
    combobox1.Clear;
    sql.add(´select distinct * from planocontas´);
    sql.add(c);
    Open;
while dm.qtbplano.Eof = false do
begin
 combobox1.items.add(dm.qtbplano.fieldbyname(´descricao´).AsString);
 dm.qtbplano.next;
end;
 dm.qtbplano.close;
end;

end;


Agora esse autocompletar que eu fiz acho que deve ter como melhora-lo

//Criando um autocompletar no combobox
procedure TForm7.ComboBox1Change(Sender: TObject);
var
Aux : integer;
begin
if DM.qtbplano.LOCATE(´descricao´,copy(combobox1.Text,1,combobox1.SelStart),[loCaseInsensitive, loPartialKey]) then begin
combobox1.OnChange := nil;
Aux := combobox1.SelStart;
combobox1.Text := DM.qtbplano.FieldByName(´descricao´).AsString;
combobox1.SelStart := Aux;
combobox1.OnChange := combobox1Change;
end;
end;


Se nao for nada disso desconsidere o post


Responder

Gostei + 0

27/11/2006

Adriano_servitec

para utilizar o recurso de AutoCompletar do ComboBox, vc só precisa definir como True as propriedades AutoComplete e AutoDropDown


Desculpe eu ter postado esse autocompletar pos no delphi 5 (o qual estou usando nao tem esse recurso [b:a1164229a8]AutoComplete[/b:a1164229a8], mais achei ele no componente do JEDI chamado jvComboBox esse sim tem esse recurso de autocompletar. Mais como disse o delphi 5 o combobox nao tem a propriedade autocompletar. Mais mesmo assim da para aperfeiçoar esse codigo que eu fiz em um EDIT ou MASKEDIT por exemplo, a nao ser que em Delphi superior ao que eu tenho tambem existe essa propriedade AUTOCOMPLETE... :D


Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar