Public blnLoop As Boolean
Private Sub Form_Load()
blnLoop = True
Do While blnLoop = True
Time.Caption = Now
DoEvents
Loop
End Sub
Private Sub Command1_Click()
blnLoop = False
End Sub
Försöker få en klocka som uppdaterar sig konstant, men när jag testkör denna kod så kommer inte något fönster upp. Om jag däremot tar bort DoEvents så hänger skiten sig, och detta är typ det första jag gjort i VB (enbart för att jag vill förbereda mig lite inför Programmering A, inte för att jag konverterat eller så :p), så jag har ingen aning om vad som kan vara fel :)
Som jag ser det så lämnar du aldrig Form_Load(). Form_Load() brukar normalt användas till att initiera data innan applikationen kör igång. Man ska dock aldrig bli hängande i denna sub.
Du kanske kan lösa det mha att lägga ut en Timer som sköter uppdateringen av Time.Caption ? Det räcker ju med att uppdatera 1 ggr/s eftersom "Now" inte har någon högra upplösning.
Command1_Click() skulle då bara starta eller stoppa Timern.
Håller med föregående talare. En timer passar mycket bättre. Din label skulle troligtvis mest blinka o ha sej, eftersom programmet nu vill skriva till labeln väldigt många ggr per sekund.
Ok. Tyvärr så har jag ungefär noll kunskap om VB, och jag har inte lyckats hitta någon bra manual (har sökt på MS-sida, men har inte hittat något riktigt bra liknanade PHP.nets manual), så jag skulle uppskatta lite mer förklaring :)
dra in en Timer till formen, svår att missa, ikonen är ett tidtagarur.
markera det, tryck ctrl+p så att du kommer till dess egenskaper. Sätt ett lämpligt intervall, typ 1000 om den ska räkna varje sekund.
Så dubbelklickar du på timern och skriver in