Ayudaaaaaa con el keypresss
nesecito mover un shape y cuando trato de hacerlo no sale. Uso la siguiente sinaxis
en el keypress del form1 pongo
if keyascii=37 then
shape1.left=shape1.left+10
end if
croe que esta bien pero no sale
ayudaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
en el keypress del form1 pongo
if keyascii=37 then
shape1.left=shape1.left+10
end if
croe que esta bien pero no sale
ayudaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
hola.
hasta donde yo tengo entendido, el keyascii es un parametro para el evento keypress de un cuadro de texto por ejemplo. Sin embargo creo que un shape no tiene dicho evento, así que el valor de keyascii es nulo, es decir que nuca será igual a 37.
si ese no es el problema, brindame mas detalles ok. bye
hasta donde yo tengo entendido, el keyascii es un parametro para el evento keypress de un cuadro de texto por ejemplo. Sin embargo creo que un shape no tiene dicho evento, así que el valor de keyascii es nulo, es decir que nuca será igual a 37.
si ese no es el problema, brindame mas detalles ok. bye
Hola,
Utiliza el método keydown en lugar del keypress
Saludos
sdemingo
Utiliza el método keydown en lugar del keypress
Saludos
sdemingo
Pon este código y moverás el shape en las cuatro direcciones.
Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)
If KeyCode = vbKeyRight Then Shape1.Left = Shape1.Left + 10
If KeyCode = vbKeyLeft Then Shape1.Left = Shape1.Left - 10
If KeyCode = vbKeyUp Then Shape1.Top = Shape1.Top - 10
If KeyCode = vbKeyDown Then Shape1.Top = Shape1.Top + 10
End Sub
Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)
If KeyCode = vbKeyRight Then Shape1.Left = Shape1.Left + 10
If KeyCode = vbKeyLeft Then Shape1.Left = Shape1.Left - 10
If KeyCode = vbKeyUp Then Shape1.Top = Shape1.Top - 10
If KeyCode = vbKeyDown Then Shape1.Top = Shape1.Top + 10
End Sub