Tein tänään tässä Visaul Basicilla ruutupelin jossa pitää... (ladatkaa ja katsokaa :)
Pelin saa osoitteesta: http://titanix.net/~niko/ruutupeli.zip
Aika tylsä mutta hyvää ajan vietettä...:)
No joo...ei tuota kyllä kovin kauan viitsi pelata :) Siinä on muuten huijausmahdollisuus rämpyttämällä välilyöntiä hiirellä painamisen sijaan.
Aika tylsä!
Mielenkiintoisa.. :) tilttaa, kun painan 60 sekennin ajanotolla :) eikä aijanotto toimi :SD
Visaul Basic ei tue yli 65sek timereitä :(
kerro ihmeessä jos teet uuden version..
..korjattu vesrio..
;)
kyllä siihen teen korjatun version :), lähdekooditkin on tarkoitus postittaa tänne, kunhan saan bugit korjatuksi.
Timerin maksimiarvo taitaa olla 65536 millisekuntia, mutta toki sen rajan voi kiertää: laita Timerin arvoksi vaikka 1000 ja lisää laskurimuuttujaa joka kerta yhdellä, silloin muuttujassa on aina kuluneiden sekuntejen määrä.
Yksi offtopic hyödyllinen vinkki loopeille, joissa tarvitaan hidastuksia.. jos loopissa tarvitaan vaikka 30 ms. hidastus, voidaan asia hoitaa näin:
sub timer1.timer() 'timerin intervalli on sitten se 30ms.. do_something() end sub
Koskapa Timer-funktion käyttö hidastaa ohjelmaa itsekin kohtuuttomasti, on tuo ylläoleva keino mielestäni paras.. pitää vain muistaa laittaa kaikki loopin kannalta tärkeät muuttujat staattisiksi..
Eh.. ei mennyt oikein hyvin tuo koodi.. c++ kun on mielessä, ja yrittää muistella VB-koodia.. No, periaate ymmärretty!)
Kannattaa myös pitää mielessä, että Timer-komponentti toimii eri tavalla eri Windowseilla. Versioilla NT, 2000 ja XP Timer pystyy jopa 1/100s (10ms) tarkkuuteen ajastuksessa, muilla Windowseilla minimiväli on muistaakseni 1/18s (~56ms).
Mulla ei ainakaan bugita win xp, vaika pistän timeriin 1ms.
Aihe on jo aika vanha, joten et voi enää vastata siihen.