Enable Auto-complete on Your Edit Controls in VC++

Enable Auto-complete on Your Edit Controls in VC++

You may have noticed the auto completion feature in the edit controls in Microsoft’s file dialog boxes. You enter a few letters/words of the file path/file name, the edit control provides a dropdown list box with suggestions for your string.

The API that performs this trick for you is SHAutoComplete(HWND hEdit, DWORD flags);. hEdit is the handle to the edit control window. It flags a value or combination of values that controls the behaviour of the autocomplete feature.

Here’s an example:

#include  #include #pragma comment (lib, "shlwapi.lib")LRESULT CALLBACK MyDialogProc (HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam){switch (uMsg){case WM_INITDIALOG:    HWND hFilePath;        CoInitialize (NULL);    hFilePath = GetDlgItem (hWnd, ID_FILEPATH);    SHAutoComplete (hFilePath, SHACF_DEFAULT);    break;case WM_DESTROY:    CoUninitialize();    PostQuitMessage (0);    break;}}

About Our Editorial Process

At DevX, we’re dedicated to tech entrepreneurship. Our team closely follows industry shifts, new products, AI breakthroughs, technology trends, and funding announcements. Articles undergo thorough editing to ensure accuracy and clarity, reflecting DevX’s style and supporting entrepreneurs in the tech sphere.

See our full editorial policy.

About Our Journalist