8. Изменить процедуру обратного вызова для диалогового окна, чтобы она выглядела так, как показано в листинге 5.3. Листинг 5.3

LRESULT CALLBACK About(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam)

{

SHINITDLGINFO shidi;

int wmId, wmEvent;

switch (message)

{

case WM_INITDIALOG:

// Create a Done button and size it.

shidi.dwMask = SHIDIM_FLAGS;

shidi.dwFlags = SHIDIF_DONEBUTTON | SHIDIF_SIPDOWN | SHIDIF_SIZEDLGFULLSCREEN;

shidi.hDlg = hDlg;

SHInitDialog(&shidi);

return TRUE;

case WM_COMMAND:

wmId = LOWORD(wParam);

wmEvent = HIWORD(wParam);

switch (wmId)

{

case IDC_BUTTON1:

MyDog = new Dog();

break;

case IDC_BUTTON2:

delete MyDog;

MyDog = NULL;

break;

case IDC_BUTTON3:

MyDog->age = 200;

break;

case IDC_BUTTON4:

MyDog->Speak();

break;

}

if (LOWORD(wParam) == IDOK)

{

EndDialog(hDlg, LOWORD(wParam));

return TRUE;

}

break;

}

return FALSE;

}

Перейти на страницу:

Похожие книги