Fetstil Fetstil Kursiv Understrykning linje färgläggning tabellverk Punktlista Nummerlista Vänster Centrerat högerställt Utfyllt Länk Bild htmlmode
  • Forum & Blog
    • Forum - översikt
      • .Net
        • asp.net generellt
        • c#
        • vb.net
        • f#
        • silverlight
        • microsoft surface
        • visual studio .net
      • databaser
        • sql-server
        • databaser
        • access
        • mysql
      • mjukvara klient
        • datorer och komponenter
        • nätverk, lan/wan
        • operativsystem
        • programvaror
        • säkerhet, inställningar
        • windows server
        • allmänt
        • crystal reports
        • exchange/outlook
        • microsoft office
      • mjukvara server
        • active directory
        • biztalk
        • exchange
        • linux
        • sharepoint
        • webbservers
        • sql server
      • appar (win/mobil)
      • programspråk
        • c++
        • delphi
        • java
        • quick basic
        • visual basic
      • scripting
        • asp 3.0
        • flash actionscript
        • html css
        • javascript
        • php
        • regular expresssion
        • xml
      • spel och grafik
        • DirectX
        • Spel och grafik
      • ledning
        • Arkitektur
        • Systemutveckling
        • krav och test
        • projektledning
        • ledningsfrågor
      • vb-sektioner
        • activeX
        • windows api
        • elektronik
        • internet
        • komponenter
        • nätverk
        • operativsystem
      • övriga forum
        • arbete karriär
        • erbjuda uppdrag och tjänster
        • juridiska frågor
        • köp och sälj
        • matematik och fysik
        • intern information
        • skrivklåda
        • webb-operatörer
    • Posta inlägg i forumet
    • Chatta med andra
  • Konto
    • Medlemssida
    • Byta lösenord
    • Bli bonsumedlem
    • iMail
  • Material
    • Tips & tricks
    • Artiklar
    • Programarkiv
  • JOBB
  • Student
    • Studentlicenser
  • KONTAKT
    • Om pellesoft
    • Grundare
    • Kontakta oss
    • Annonsering
    • Partners
    • Felanmälan
  • Logga in

Hem / Forum översikt / inlägg

Posta nytt inlägg


styrning

Postades av 2002-05-09 12:17:57 - Peter Trones, i forum visual basic - allmänt, Tråden har 8 Kommentarer och lästs av 496 personer

vart kan jag läsa om hur man använder sig av keydown m.m ,
jagh vill kunna styra tex en boll, med thälp av piltangenterna.

finns det nån tutorial på hur man gör det?


Svara

Sv: styrning

Postades av 2002-05-09 15:50:47 - Jonatan Heyman

Hej,
Så här kan du göra med keydown:
<code>
Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)
Select Case KeyCode
Case vbKeyRight
Shape1.Left = Shape1.Left + 50
Case vbKeyLeft
Shape1.Left = Shape1.Left - 50
Case vbKeyUp
Shape1.Top = Shape1.Top - 50
Case vbKeyDown
Shape1.Top = Shape1.Top + 50
End Select
End Sub
</code>

För mig låter det som om du kanske vill kunna styra någonting i till
exempel ett spel? I så fall så funkar inte keydown speciellt bra för den
kan bara ta emot en knapptryckning samtidigt, men det finns ett
exempel i tips & tricks ( [Känna av flera knapp tryckningar samtidigt i ren VB-kod...] ) som beskriver hur du gör för att känna
av flera tangenttryckningar samtidigt.

/Jonatan


Svara

Sv: styrning

Postades av 2002-05-09 16:11:26 - Markus Jarderot

<code>
Dim dLeft As Boolean, dRight As Boolean
Dim dUp As Boolean, dDown As Boolean

Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)
Select Case KeyCode
Case vbKeyRight
dRight = True
Case vbKeyLeft
dLeft = True
Case vbKeyUp
dUp = True
Case vbKeyDown
dDown = True
End Select
End Sub

Private Sub Form_KeyUp(KeyCode As Integer, Shift As Integer)
Select Case KeyCode
Case vbKeyRight
dRight = False
Case vbKeyLeft
dLeft = False
Case vbKeyUp
dUp = False
Case vbKeyDown
dDown = False
End Select
End Sub

Private Sub Timer1_Timer()
If dRight Then Shape1.Left = Shape1.Left + 50
If dLeft Then Shape1.Left = Shape1.Left - 50
If dUp Then Shape1.Top = Shape1.Top + 50
If dDown Then Shape1.Top = Shape1.Top - 50
End Sub
</code>


Svara

Sv: styrning

Postades av 2002-05-10 20:21:43 - Björn Johansson

tycker MizardX's kod är lite väl onödig lång...räcker ju med jonathans kod ju..även fast dom gör precis samma sak...

tycker BJ


Svara

Sv: styrning

Postades av 2002-05-10 20:56:44 - Andreas Hillqvist

MizardX gör det möjligt att färdas diagonalt. Det skiljer kode åt.


Svara

Sv: styrning

Postades av 2002-05-10 21:50:14 - Björn Johansson

nej...dom gör precis likadant..båda koderna...bara att den sista koden är lite väl lång...


Svara

Sv: styrning

Postades av 2002-05-11 01:46:48 - David Emilsson

skillnaden är väl att man kan ställa in hastigheten genom timern..?
om man gör på jonatans sätt flyttas väl shapen beroende på hur snabb upprepningshastighet man har satt på tangentbordet.


Svara

Sv: styrning

Postades av 2002-05-11 12:17:14 - Andreas Hillqvist

Du har fel. Det första exemplet kan man ej styra diagonalt t.ex up & höger sammtidigt. Eftersom enbart den senaste tangent upprepas.<br>
<br>
Det andra exemplet är ett bättre sätt att utföra det på. Vilket gör att den rör sig både upp och vänster samttidigt.<br>
<br>
Fast jag föreslår att man förändrar koden i timern lite.
Stället för att flytta den fyra gånger, som kommer ske om alla fyra knappar är nedtryckna, enbart en gång.
<code>
Private Sub Timer1_Timer()
Dim NewLeft As Single
Dim NewTop As Single
If dRight Then NewLeft = NewLeft + 50
If dLeft Then NewLeft = NewLeft - 50
If dUp Then NewTop = NewTop + 50
If dDown Then NewTop = NewTop - 50

Shape1.Move Shape1.Left + NewLeft, Shape1.Top + NewTop
End Sub
</code>


Svara

Sv: styrning

Postades av 2002-05-13 09:30:42 - Jonatan Heyman

Hej,
Jag tänkte precis som bj först, men innan jag klagade så testade jag koden, vilket var tur för jag upptäckte faktiskt att man kunde flytta shapen diagonalt och det kan man ju inte med min kod. =)

/Jonatan


Svara

Nyligen

  • 14:24 CBD regelbundet?
  • 14:23 CBD regelbundet?
  • 14:22 Har du märkt några verkliga fördel
  • 09:09 Vill du köpa medicinska tester?
  • 12:47 Vem beviljar assistansen – kommune
  • 14:17 Någon med erfarenhet av hemstädnin
  • 14:14 Bör man använda sig av en båtförme
  • 14:12 Finns det någon intressant hundblo

Sidor

  • Hem
  • Bli bonusmedlem
  • Läs artiklar
  • Chatta med andra
  • Sök och erbjud jobb
  • Kontakta oss
  • Studentlicenser
  • Skriv en artikel

Statistik

Antal besökare:
Antal medlemmar:
Antal inlägg:
Online:
På chatten:
4 569 612
27 953
271 709
6 570
0

Kontakta oss

Frågor runt konsultation, rådgivning, uppdrag, rekrytering, annonsering och övriga ärenden. Ring: 0730-88 22 24 | pelle@pellesoft.se

© 1986-2013 PelleSoft AB. Last Build 4.1.7169.18070 (2019-08-18 10:02:21) 4.0.30319.42000
  • Om
  • Kontakta
  • Regler
  • Cookies