Окт 16

Пример использования элементов управления Edit box и List box

Различные вариации на тему проекта DlgDemo..., вам, наверное, уже надоели. Давайте создадим что-нибудь новенькое. Например, приложение «Электронная записная книжка» для хранения сведений о ваших друзьях и знакомых. Эти сведения могут включать:
имя (фамилия и.о.), содержащее не более 20 символов;
телефон (максимум 20 символов);
дата рождения (максимум 20 символов);
адрес (максимум 80 символов).
Реальное хранение информации будет обеспечиваться с помощью «базы данных», реализованной в файле notebook.dat.
Заметим, что каждое поле имеет длину на единицу большую, чем того требует спецификация программы. Дополнительный байт в конце каждого поля учитывает размещение нуля при записи значения в виде С-строки.
Для простоты реализации приложение будет иметь меню с единственным пунктом Просмотр, при выборе которого будет вызываться диалоговое окно, содержащее окно списка List box. Диалоговое окно должно содержать кнопки, при помощи которых пользователь может добавить новую запись в список или удалить выбранную запись из списка.
Примем решение, что для удобства пользователя окно списка должно отображать только первые два поля каждой записи (мы считаем их основными). Дополнительная информация, показывающая день рождения и адрес, должна отображаться в отдельных окнах редактирования (Edit box) только после выбора какого-либо элемента в окне списка.
Создайте новый проект типа Win32 Application с именем MyNotebookl. Добавьте к приложению ресурс меню IDR_MENU1 с одним пунктом. Пункт меню должен иметь имя Просмотр и идентификатор IDM_VIEW.
Включите в приложение ресурс диалогового окна IDD_VIEW. Свойства диалогового окна можно оставить теми, какими они предлагаются по умолчанию. Теперь увеличьте ширину первоначальной формы диалога примерно вдвое и разместите на ней элементы управления в соответствии с рис. 7.25.
Ширину окна списка, возможно, придется изменить. Это выяснится на этапе гестирования программы. В окне списка должны быть полностью видны первые два поля каждой записи, но не должно попадать начало третьего поля.
Позже, при разработке приложения MyNotebook2, мы покажем, как можно регулировать программным способом размеры и размещение элементов управления в зависимости от метрик используемого шрифта.