Операционная система Microsoft Windows 3.1 для программиста -том 2


Листинг 3.10. Файл dlgtab\dlgtab.cpp - часть 2


// Регистрация класса aWndClass = RegisterClass(&wc);

return (aWndClass != 0); }

// ===================================== // Функция WndProc // =====================================

LRESULT CALLBACK _export WndProc(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam) { switch (msg) { case WM_CREATE: { // Создаем модальную диалоговую панель DialogBox(hInst, "SELECT", hwnd, (DLGPROC)DlgProc);

// После завершения работы диалоговой панели // завершаем работу приложения DestroyWindow(hwnd); return 0; }

case WM_DESTROY: { PostQuitMessage(0); return 0; } } return DefWindowProc(hwnd, msg, wParam, lParam); }

// ===================================== // Функция DlgProc // ===================================== #pragma argsused

BOOL CALLBACK _export DlgProc(HWND hdlg, UINT msg, WPARAM wParam, LPARAM lParam) { switch(msg) { // Инициализация диалоговой панели case WM_INITDIALOG: { return TRUE; }

case WM_COMMAND: { switch(wParam) { char Buffer[256];

// Сообщение от кнопки "OK" case IDOK: { // Получаем строку из текстового редактора GetDlgItemText(hdlg, IDC_NAME, Buffer, 80);

lstrcat(Buffer, "\n\nДолжность:\n");

// Определяем состояние переключателей // типа RadioButton if(IsDlgButtonChecked(hdlg, IDC_PROGRAMMER)) { lstrcat(Buffer, "Программист"); } else if(IsDlgButtonChecked(hdlg, IDC_ENGINIER)) { lstrcat(Buffer, "Инженер"); } else if(IsDlgButtonChecked(hdlg, IDC_SENGINIER)) { lstrcat(Buffer, "Старший инженер"); }

lstrcat(Buffer, "\n\nЗнает языки:\n");

// Определяем состояние переключателей // типа CheckBox if(IsDlgButtonChecked(hdlg, IDC_ENGLISH)) { lstrcat(Buffer, "Английский\n"); } if(IsDlgButtonChecked(hdlg, IDC_C)) { lstrcat(Buffer, "Си\n"); } if(IsDlgButtonChecked(hdlg, IDC_PASCAL)) { lstrcat(Buffer, "Паскаль\n"); }

MessageBox(hdlg, Buffer, "Вы ввели", MB_OK); return TRUE; }

// Отмена диалоговой панели. case IDCANCEL: { // Устанавливаем флаг завершения диалога EndDialog(hdlg, FALSE); return TRUE; } } } } return FALSE; }




Начало  Назад  Вперед



Книжный магазин