Программы   Загрузка Партнерство   О компании Контакты  
 
                    
  Карта Сайта   
   





Автоматическое завершение вводимой фразы для TComboBox

Автор: http://www.swissdelphicenter.ch

{ 
  Ever wondered how to make a combobox 
  with autocomplete like the one in the explorer? 
  The trick is in the CB_FINDSTRING API call. 
}


 var
   LastKey: Word;

 procedure TForm1.ComboBox1KeyDown(Sender: TObject; var Key: Word;
   Shift: TShiftState);
 begin
   LastKey := Key;
 end;

 procedure TForm1.ComboBox1Change(Sender: TObject);
 var
   Srch: string;
   ix: Integer;
 begin
   Srch := combobox1.Text;
   if LastKey = $08 then
   begin
     LastKey := 0;
     Exit;
   end;
   LastKey := 0;
   ix := combobox1.Perform(CB_FINDSTRING, - 1, Longint(PChar(Srch)));
   if ix > CB_ERR then
   begin
     combobox1.ItemIndex := ix;
     combobox1.SelStart  := Length(Srch);
     combobox1.SelLength := (Length(combobox1.Text) - Length(Srch));
   end;
 end;
           




Программы  |  Загрузка  |  Партнерство  |  О компании  |  Контакты

Copyright © LSD Software 2006 - 2011