allora, intanto WM_PAINT e' un MESSAGGIO e non un evento che viene inviato dal form alla funzione che gestisce il dialog. Premetto che non so niente di vb (menomale ) cmq il pezzo di codice che hai citato fa parte di una struttura per gestire un semplice dialog. Detto in soldoni, ogni controllo (ovvero editbox button richedit label ect ect) hanno un id univoco all'interno del form che ti permette di gestirli con le apposite api, e ti permettono anche di capire quale controllo ha mandato il messaggio. Per esempio se tu su un form disegni 2 bottoni, uno con id 1 e l'altro con id 2 nel momento in cui tu premi uno dei due il controllo manda un messaggio WM_COMMAND che tu ricevi e gestisci con quello switch, per capire poi quale dei due tasti e' stato premuto devi controllarne l'id. Mi rendo conto che ho detto tante cose confusionarie ma cerca di immedesimarti :P