4

I need a delphi component for Delphi 2007 win32 that have features like Google search text box.

** While User writing search key it should fill/refresh the list with values, and user can select one of them.

**User can go up and down list and can select one of them.

**List should contain codes and text pair, so user can select text and I can get code for database operations.

(Google can highlight the search text in List but I think it is not possible with Delphi 2007, so it is not expected.)

I tried Dev Express TcxMRUEdit, however it doesn't meet my needs

dummzeuch
  • 10,975
  • 4
  • 51
  • 158
Reber
  • 41
  • 1
  • 2
  • duplicate, take a look at http://stackoverflow.com/questions/2012208/google-like-edit-combo-control-for-delphi –  Apr 21 '10 at 14:45

3 Answers3

2

Since you have DevExpress, why don't you try the cxLookupComboBox in lsEditMode and with ImmediateDropDown = True?

R-D
  • 1,154
  • 1
  • 10
  • 25
1

Check out woll2woll components. The TLookupcombobox has done this since Delphi 3 (or earlier). This is not spam, I just use the library.

http://www.woll2woll.com/

Rohit Gupta
  • 4,022
  • 20
  • 31
  • 41
0

I also had the same problem and unfortunately didn't find a suitable component. I was also inspired from google.

So it turned out to be easier for me to "simulate a component" by using an editbox and a grid placed under it. As the user types something in the editbox the query refreshes and the proper resulst are shown in the grid. I have many columns in the grid, the query results try to match all the fields (so if I type 'po', the query will return all records where any field is like 'po%'). I also added a delay of 500ms after the user types to avoid to run too many unnecessary queries (another aproach could be to kill the thread as the user strikes a new key, if the query is run in a thread).

In this way I obtained the required functionality, even if without higlighting the search text, anyway my users are delighted by this.

In every place I am using this "component" I am attaching a query at runtime so it can be used in many different forms.

I somehow was also inspired by the skype UI: when you display the lsit of contacts you can type something and the contacts will be filtered accordingly (skype uses an editbox + grid/listbox).

UnDiUdin
  • 14,924
  • 39
  • 151
  • 249