F.ö. så är det i princip samma typ av kod som jag skrev, fast en annan tidkälla, vilket inte spelar någon roll i detta fall. Ännu ett alternativ hade då varit att deklarerat timeGetTime() ur WinAPI.
Problemet med denna loop är dock att om GetTickCount skulle råka slå runt precis efter man tryckt på knappen, så kommer timeouten aldrig att ske. Små odds, men man bör räkna med allt.

Sedan är det, som jag skrev tidigare, onödigt att ens använda sig av en deklarerad Sleep, eftersom den i sig tar 100% i VB.
Utöver det ovannämnda så blir timern ändå inte exakt, eftersom du kör Sleep 50! Det ger ju en marginal på 50ms!
Mvh
speakman