Originariamente inviato da MItaly
Credo che si tratti banalmente del messaggio WM_PAINT...
Messaggio WM_Paint? Veramente ero in cerca di un evento. La DoEvents ordina al framework di eseguire immediatamente anche gli altri eventi accodati e generati durante la gestione di un altro evento. Nel mio caso il framework stava gestendo l'evento Load. Nel gruppo di istruzioni scritte per gestire tale evento, ho inserito la FormSecondario.Show. Ora, non avendo dato l'esito voluto se non dopo la fine della gestione dell'evento Load, ho forzato con la "DoEvents" la gestione real time di eventuali eventi accodati. A questo punto la visualizzazione del formsecondario è stata impeccabile. Da ciò si deduce che quella "FormSecondario.Show()" ha generato un evento la cui gestione è fondamentale per l'esecuzione completa della Show stessa. Tale evento generato si è accodato per essere eseguito dopo l'evento Load. La "DoEvents" ha ordinato di eseguirlo subito, sedutastante. Ora, ciò che mi sono chiesto è: quale tipo di evento è stato mai generato?

La domanda mi pare lecita, poichè in fase di programmazione, pur conoscendo il metodo "DoEvents", mai e poi mai mi sarebbe venuto in mente di utilizzarlo. Perchè mai è poi mai mi sarebbe venuto in mente che una semplice Show di un form senza codice (solo la presenza di una label in un panel) avrebbe generato un evento fondamentale da gestire.

Con ciò, voglio dire che a volte per ottenere quello che si vuole bisogna andare a tentoni. E quando in futuro qualcuno avrà lo stesso problema, certamente saprò cosa rispondere nel caso mi si chieda aiuto. Ma non saprò dare una spiegazione esatta.