Visual Basic.NET - Ayuda hacer que salte un PictureBox al presionar tecla del teclado

 
Vista:
sin imagen de perfil

Ayuda hacer que salte un PictureBox al presionar tecla del teclado

Publicado por David (5 intervenciones) el 20/02/2015 12:27:58
Buenas,
Estoy haciendo un juego como el geometry dash y me gustaría saber el código para hacer que el cuadrado (un picturebox) realice un salto hacia arriba hasta cierta altura al presionar una tecla del teclado (preferentemente las flechas o la barra espaciadora). Haciendo este un salto desde una posición 80;405 hasta la posición 80;329.
Muchas gracias de antemano.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil
Val: 481
Bronce
Ha mantenido su posición en Visual Basic.NET (en relación al último mes)
Gráfica de Visual Basic.NET

Ayuda hacer que salte un PictureBox al presionar tecla del teclado

Publicado por Miguel (476 intervenciones) el 20/02/2015 17:32:18
Hola, creo que eso lo puedes hacer con el evento keyDown/kewUp del form.

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

Ayuda hacer que salte un PictureBox al presionar tecla del teclado

Publicado por David (5 intervenciones) el 20/02/2015 23:39:20
Gracias Miguel por tu aportacion !!! Ya me han comentado anterioiprmente que se realiza con el evento KeyDown pero no se como hacerlo me gustarias saber si alguien puede hacerme el favor de hacerlo.
Gracias !!!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 481
Bronce
Ha mantenido su posición en Visual Basic.NET (en relación al último mes)
Gráfica de Visual Basic.NET

Ayuda hacer que salte un PictureBox al presionar tecla del teclado

Publicado por Miguel (476 intervenciones) el 21/02/2015 01:06:19
Funcion:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
Private WithEvents timerSalto As New Timer With {.Enabled = False, .Interval = 50}
    Private totalUnidades As Integer = 0
    Private unidadesActuales As Integer = 0
    Private salto As estadoSalto = estadoSalto.Terminado
 
    Private Enum estadoSalto
        Subiendo
        Bajando
        Terminado
    End Enum
 
    Private Enum unidadesSalto
        Cincuenta
        Cien
        CientoCincuenta
        Doscientos
    End Enum
 
    Private Sub timerSalto_Tick() Handles timerSalto.Tick
        Select Case salto
            Case estadoSalto.Bajando
                unidadesActuales = unidadesActuales - 10
                Dim localizacionX As Integer = tuPictureBox.Location.X
                Dim localizacionY As Integer = tuPictureBox.Location.Y + 10
                tuPictureBox.Location = New Point(localizacionX, localizacionY)
                If unidadesActuales = 0 Then
                    salto = estadoSalto.Terminado
                End If
            Case estadoSalto.Subiendo
                unidadesActuales = unidadesActuales - 10
                Dim localizacionX As Integer = tuPictureBox.Location.X
                Dim localizacionY As Integer = tuPictureBox.Location.Y - 10
                tuPictureBox.Location = New Point(localizacionX, localizacionY)
                If unidadesActuales = 0 Then
                    unidadesActuales = totalUnidades
                    salto = estadoSalto.Bajando
                End If
            Case estadoSalto.Terminado
                timerSalto.Stop()
        End Select
 
    End Sub
 
    Private Sub saltoFigura(unidades As unidadesSalto)
        Select Case unidades
            Case unidadesSalto.Cien
                totalUnidades = 100
                unidadesActuales = 100
            Case unidadesSalto.CientoCincuenta
                totalUnidades = 150
                unidadesActuales = 150
            Case unidadesSalto.Cincuenta
                totalUnidades = 50
                unidadesActuales = 50
            Case unidadesSalto.Doscientos
                totalUnidades = 200
                unidadesActuales = 200
        End Select
        salto = estadoSalto.Subiendo
        timerSalto.Start()
    End Sub



Uso:

1
2
3
4
5
6
7
Private Sub tuForm_KeyDown(sender As Object, e As KeyEventArgs) Handles MyBase.KeyDown
        If e.KeyCode = Keys.Space Then
            If salto = estadoSalto.Terminado Then
                saltoFigura(unidadesSalto.CientoCincuenta)
            End If
        End If
    End Sub




Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

Ayuda hacer que salte un PictureBox al presionar tecla del teclado

Publicado por David (5 intervenciones) el 21/02/2015 09:01:04
Michas gracias Miguel, lo probare y te comentare haber que tal funciona !!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

Ayuda hacer que salte un PictureBox al presionar tecla del teclado

Publicado por David (5 intervenciones) el 23/02/2015 13:37:58
Buenas Miguel he probado el código pero no me funciona te adjunto el programa haber si me podrías hacer el favor de solucionarme el problema.
Muchisimas gracias.


https://mega.co.nz/#F!990DGTLQ!VD23Iru4mNk46-EJ0-d2vA
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 481
Bronce
Ha mantenido su posición en Visual Basic.NET (en relación al último mes)
Gráfica de Visual Basic.NET

Ayuda hacer que salte un PictureBox al presionar tecla del teclado

Publicado por Miguel (476 intervenciones) el 23/02/2015 16:17:15
Hola, he revisado el proyecto y me parece que solo tienes que activar la propiedad "keyPreview" del formulario "frmPantalla" (.KeyPreview=True).

Saludos

PD: Te recomiendo que borres o cambies la privacidad del archivo...
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

Ayuda hacer que salte un PictureBox al presionar tecla del teclado

Publicado por David (5 intervenciones) el 24/02/2015 12:41:21
Gracias Miguel por tu ayuda, pero no se donde debo de introducir (.KeyPreview=True). ¿Me podrías indicar en que parte del código debería introducirlo ?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 481
Bronce
Ha mantenido su posición en Visual Basic.NET (en relación al último mes)
Gráfica de Visual Basic.NET

Ayuda hacer que salte un PictureBox al presionar tecla del teclado

Publicado por Miguel (476 intervenciones) el 24/02/2015 14:49:31
En el panel de propiedades; selecciona el formulario y busca la propiedad "keyPreview" y la modificas a "True".
También puedes colocar el código en el evento "Load" del formulario: "Me.KeyPreview=True".
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar