Certes, ça marche. Bien vu. Mais c'est un peu brutal: tu monopolises quasiment tout le temps CPU pour cette boucle, et si un autre programme tourne en même temps, il sera très largement pénalisé.
Pour éviter cet inconvénient, insère au minimum une commande DISPLAY juste avant END_WHILE. Cela permet à Windows de reprendre la main momentanément et traiter les évènements et messages en attente, pour d'autres processus.