Trochę trudno znaleźć na forum posty z F1 (za krótka fraza), ale co się dało poszukałem i raczej nie ma tego co chcę, a chcę:
Mam dialog utworzony przez CreateDialog. Jest on głównym oknem programu. Główna pętla programuwygląda tak:
HWND hD=CreateDialog(hInstance, MAKEINTRESOURCE(DIALOG_1),0, (DLGPROC)DialogProc);
MSG msg;
BOOL r=GetMessage(&msg,0,0,0);
while(r!=0 && r!=-1){
if(!(hD && IsDialogMessage(hD, &msg))){
TranslateMessage(&msg);
DispatchMessage(&msg);
}
r=GetMessage(&msg,0,0,0);
}
O co chodzi: w procedurze dialogu chcę obsłużyć naciśnięcie F1. Próbowałem przez WM_KEYDOWN i WM_CHAR. I nic. Komunikaty nie przychodzą. W dialogu mam ListView i w subklasowanej procedurze oba komunikaty przychodzą, ale nie będę subklasował każdego przycisku itp. w dialogu. JAK TO ZROBIĆ W DIALOGU???