Mah... se c'é qualcosa di difficile da capire allora non l'ho capito nemmeno io. Per il resto si tratta semplicemente di simulare gli eventi che di solito scaturiscono da azioni "esterne" (es: click con il mouse) tramite codice.
Per capirci: io aggiungo ad un bottone un eventhandler (diciamo che faccio in modo che al click venga eseguito del codice) e questo di solito viene chiamato quando un utente ci clicca sopra con il mouse, con dispatchEvent invece che aspettare che un utente clicchi sul bottone lo fai tu da codice.
Qui un esempio. Come potrai notare, se clicchi direttamente sul bottone avviene la stessa cosa di quando scatta il timer, ma i conteggi sono differenti