ANIMA?ÃO

JOERBETH 16/11/2016 17:28:58
#468970
Boa tarde

Eu de novo no NET rs

Estou tentando fazer uma pequena animação, simples, mais não tá fazendo o boneco andar?

Public Class Form1
Private Declare Function GetAsyncKeyState Lib [Ô]User32[Ô] (ByVal vKey As Integer) As Integer
Dim apppath As String = Application.StartupPath
Dim k As String
Dim i As Integer = 0
Private Sub Timer1_Tick(sender As Object, e As EventArgs) Handles Timer1.Tick
Dim d As Boolean = GetAsyncKeyState(Keys.D)
Dim i As Integer
If d = True Then
i = i + 1
personagem.ImageLocation = apppath & [Ô]\img\mov-[Ô] & i & [Ô].png[Ô]
personagem.Left = personagem.Left + 5

If i = 4 Then
i = 0
End If
ElseIf d = False Then
personagem.ImageLocation = apppath & [Ô]\img\mov-1.png[Ô]
End If
End Sub

Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load

End Sub
End Class

??

JONATHANSTECKER 17/11/2016 07:50:00
#468984
Você chegou a iniciar o timer?

    Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
Timer1.Start()
End Sub

JOERBETH 19/11/2016 16:33:01
#469042
boa tarde

Não rolou...

Onde está o erro?
JONATHANSTECKER 19/11/2016 16:43:52
#469044
Isso você que tem que dizer... Hehe
Não faço idéia do que está ocorrendo, se está gerando um erro, não está carregando a imagem ou até se o tempo de disparo do timer na ao está definido corretamente... Não sei dizer.
DS2T 20/11/2016 12:09:18
#469051
Resposta escolhida
Debug seu programa linha a linha, veja os blocos onde ele não tá entrando e deveria entrar.

Se eu fosse chutar, diria que o GetAsyncKeyState pode estar retornando valores errados... Já faz muitos anos que usei isso, quando era apenas um pequeno garoto revoltado querendo fazer keyloggers... Mas pelo que me lembro bem, o uso dessa API não era tão simples quanto retornar um booleano de cara. Acho que ele retorna um Long ou um Integer... dá uma olhada nisso.

Outra coisa que pode ser é o interval do seu timer. Ou até mesmo sua lógica, porque eu não olhei o código direito...

Vale a pena debugar...
Tópico encerrado , respostas não são mais permitidas