Gå til innhold

Hvordan akslerere et object i praksis


Anbefalte innlegg

Videoannonse
Annonse

det er enkelt, viss timeren har et intervall pa si 1000, kan du endre dette i timer eventen...

 

timer.interval = timer.interval / 1.98'timer.interval * 0.98

 

f.eks, dett vil gjore at timeren utforer koden 98% raskere enn sist gang og vil fa objectet til og bevege seg raskere og raskere..

Lenke til kommentar

Jeg vil såvisst ikke endre intervallet til en timer du benyttet deg av - jeg ville ikke ha benyttet en timer i det hele tatt. Det er meget bedre å i stedet anvende en løkke, hvorpå du øker/senker antall piksler objektet skal bevege seg.

 

Alt du behøver, er å bruke en variabel (dblSpeed eksempelvis) som du da øker eller senker etter behov. Når biledopptateringsprosedyren iverksettes (begrenset med Sleep, fortrinnsvis), flytter du simpelthen bildeboksen/objektet like mange piksler som dblSpeed angir. Bemerk, du må muligens lage to variabler - en for X-aksen og en for Y-aksen.

Endret av aadnk
Lenke til kommentar

Den greieste måten er å bruke Timer() funksjonen, nå er min vb kunskap litt rusten, men her er mitt forslag:

'Den første funksjonen finner ut hvor lang tid det er gått siden den først ble kalt
Private Function GetTimePassed() As Single
 Static OldTime As Long
 Dim NewTime As Long
 if OldTime = 0 Then OldTime = Timer()
 NewTime = Timer()
 GetTimePassed = CSng(NewTime - OldTime) / 1000.0f
 OldTime = NewTime
End Function
' Denne funskjonen flytter en picturebox relativt i forhold til hvor mye tid som har gått, og variablene speedx, speedy
Private Sub MovePictureBox(PictureBox p, ByVal speedx As Single, ByVal speedy As Single)
 p.Left = p.Left + (speedx  * GetTimePassed())
 p.Top = p.Top + (speedy * GetTimePassed())
End Sub

Lenke til kommentar
Hvordan enderer jeg bilde så det ikke ser ut som bilen kjører opp en bakke vanrett?

5015113[/snapback]

Rotér bildet. Enten i run-time (dersom det er snakk om flere vinkler), eller ved å lagre et allerede rotert bilde i en annen bildeboks. Når du så skal vise at objektet beveger seg oppover en bakke, kan du endre Picture-egenskapen til det roterte bildet.

 

Bemerk at du her må ha en tredje bildeboks med det opprinnelige bildet, dersom du skal endre det tilbake.

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...