Dialogboksen boksen prosedyre

En dialog boks prosedyre ligner en vindusprosedyre ved at systemet sender meldinger til vil fremgangsmåten når det har å gi eller aktiviteter til å utføre. I motsetning til et vindusprosedyre kaller en dialog boks prosedyre aldri funksjonen DefWindowProc . I stedet, den returnerer den boolske verdien SANN hvis den behandler en melding eller USANN hvis den ikke.

Alle dialogboksen boksen prosedyrer har skjemaet følgende:

BOOL APIENTRY DlgProc (hwndDlg, melding, wParam, lParam) HWND hwndDlg; 
UINT beskjed; 
WPARAM wParam; 
LPARAM lParam; 
{bryteren (meldingen) {/ / sted-melding tilfeller her. 
 
        standard: return FALSE; 
    } 
} 

 

Parametere for prosedyrer har samme formål som i en vindusprosedyre med parameteren hwndDlg mottatt vindusreferansen i dialogboksen.

De fleste boksen-prosedyrer i dialogboksen behandle meldingen WM_INITDIALOG og WM_COMMAND -meldinger sendt av kontrollene, men behandle få om noen andre meldinger. Hvis en dialog boks fremgangsmåten, ikke behandler en melding, må den returnere usann til direkte at systemet skal behandle meldingene internt. Det eneste unntaket til denne regelen er WM_INITDIALOG meldingen. Dialogboksen boksen prosedyren må returnere SANN til direkte systemet vil behandle meldingen WM_INITDIALOG ytterligere. Prosedyren må i alle fall ikke kalle DefWindowProc.

Index