When you use a combo box in a dialog box, you usually respond to a WM_INITDIALOG message by initializing the combo box. The example in Creating a Square Meal Dialog Box loads the bitmaps used for the owner-drawn combo box, then calls the application-defined InitGroupList
function to initialize the combo box. It also selects the first list item in the combo box, then calls the application-defined InitFoodList
function to initialize the list box.
In the example, the owner-drawn combo box is a drop-down list box containing the names of each of the four food groups. InitGroupList
adds the name of each food group, and calls the application-defined SetItemData
function to associate a constant with each list item that identifies a corresponding food group.
The list box in the example contains the names of foods in the selected food group. InitFoodList
resets the contents of the list box, then adds the names of the current food selection in the current food group drop-down list box.
The dialog box procedure processes the WM_DESTROY message to delete the bitmaps in the owner-drawn combo box.