gracias reevil me diste la idea!!!!:
Código Delphi
[-]
procedure TForm1.Edit1Change(Sender: TObject);
var
i : integer;
begin
listbox1.itemIndex := -1;
for i:= 1 to length(edit1.text) do
SendMessage(listbox1.Handle, WM_CHAR, integer(edit1.text[i]), 0);
if (listbox1.itemIndex>=0) and (pos(lowercase(edit1.text), lowercase(listbox1.items[listbox1.itemIndex]))<>1) then
listbox1.itemIndex := -1;
end;
por cierto coincido con reevil, más sencillo usar un combo, la propiedad style tiene el valor de
cssimple que puede dar la sensación de ser un edit.
saludos