Операционная система Windows 95 для программиста



    d8ef8794     

Исходные тексты приложения Property Sheet Demo - часть 4


// ----------------------------------------------------- // Функция DlgProc1_OnInitDialog // Вызывается при инициализации первой страницы блокнота // ----------------------------------------------------- BOOL DlgProc1_OnInitDialog(HWND hdlg, HWND hwndFocus, LPARAM lParam) { // Устанавливаем переключатели в соответствии // со значениями параметров, записанных в // структуре opt SendMessage(GetDlgItem(hdlg, IDC_BOLD), BM_SETCHECK, opt.nBold, 0L);

SendMessage(GetDlgItem(hdlg, IDC_ITALIC), BM_SETCHECK, opt.nItalic, 0L);

SendMessage(GetDlgItem(hdlg, IDC_UNDERLINE), BM_SETCHECK, opt.nUnderline, 0L); return TRUE; }

// ----------------------------------------------------- // Функция DlgProc1_OnNotify // Обрабатывает извещение от первой страницы блокнота // ----------------------------------------------------- LRESULT DlgProc1_OnNotify(HWND hdlg, int idFrom, NMHDR* pnmhdr) { switch(pnmhdr->code) { // Когда пользователь нажимает кнопку OK, получаем // состояние переключателей, расположенных в первой // странице блокнота, и сохраняем это состояние в // соответствующих полях структуры opt case PSN_APPLY: { opt.nBold = (int)SendMessage( GetDlgItem(hdlg, IDC_BOLD), BM_GETCHECK, 0L, 0L);

opt.nItalic = (int)SendMessage( GetDlgItem(hdlg, IDC_ITALIC), BM_GETCHECK, 0L, 0L);

opt.nUnderline = (int)SendMessage( GetDlgItem(hdlg, IDC_UNDERLINE), BM_GETCHECK, 0L, 0L); break; } default: break; } return FALSE; }

// ----------------------------------------------------- // Функция DlgProc1_OnCommand // ----------------------------------------------------- #pragma warning(disable: 4098) void DlgProc1_OnCommand(HWND hdlg, int id, HWND hwndCtl, UINT codeNotify) { // Разблокируем кнопку "Apply" PropSheet_Changed(GetParent(hdlg), hdlg); return NULL; }

// ----------------------------------------------------- // Функция DlgProc2 // для второй страницы блокнота // ----------------------------------------------------- BOOL APIENTRY DlgProc2(HWND hdlg, UINT msg, WPARAM wParam, LPARAM lParam) { switch(msg) { HANDLE_MSG(hdlg, WM_INITDIALOG, DlgProc2_OnInitDialog); HANDLE_MSG(hdlg, WM_NOTIFY, DlgProc2_OnNotify); default: break; } return FALSE; }




Содержание  Назад  Вперед