Download demo project - 19
Kb
Download source - 4 Kb
This article describes a class (CACEditCtrl
) for an
Auto-Completion Edit Control, which can be used small data sets, such as
most-recently-used account numbers, etc.
It works by iterating over a collection of STL strings
and tries to find a matching beginning-substring in the entry. It is
not the most the most effecient way of doing it, but it works well for small
data sets.
The two functions of interest are:
void AddACEntry( LPCTSTR cpEntry )
void DisableAC( bool bDisable = true )
The AddACEntry(...)
function is used
to add a string to the control's collection of strings. No duplicate
checking is done. Why? Because this control acts as a container for
data, not a manager of data.
The DisableAC(...)
function allows you to
turn the Auto-Completion feature on or off.
In the demo image above, the numbered dialogs show the
operation of the control as 3 characters are typed into it :"T", "h", and
"a" as shown below:
- No characters typed
- A "T" was typed into the control, and it auto-completed
with its first match
- A "h" was typed into the control, ditto above
- An "a" was typed into the control, and there were no
matches to auto-complete for
Conditions of use are detailed in the header and
source file(s).
Feel free to contact me if there are any questions. Have
fun.