Como Verán, lo que quiero hacer es que si en txtlog(label) el caption dice "Arriba" x ejemplo se presione VbKeyUp
Me dan Alguna idea o corregirme este código? (Se me Ocurrio a mi de esa Manera, pero no anda :S)
Código:
Código
Const KEYEVENTF_KEYUP = &H2 Const KEYEVENTF_EXTENDEDKEY = &H1 Private Declare Sub keybd_event Lib "user32" (ByVal bVk As Byte, _ ByVal bScan As Byte, _ ByVal dwFlags As Long, _ ByVal dwExtraInfo As Long) Sub Pulsar_Tecla(Tecla As Long) Call keybd_event(Tecla, 0, 0, 0) Call keybd_event(Tecla, 0, KEYEVENTF_KEYUP, 0) End Sub Private Sub AbajoT_Timer() Call Pulsar_Tecla(vbKeyDown) End Sub Private Sub ArribaT_Timer() Call Pulsar_Tecla(vbKeyUp) End Sub Private Sub bntListen_Click() On Error GoTo errorSub With Winsock1 .Close .LocalPort = txtPort .Listen End With Exit Sub errorSub: MsgBox "Error : " & Err.Description, vbCritical End Sub Private Sub bntSend_Click() On Error GoTo errorSub Winsock1.SendData txtSend txtlog = txtlog & "Servidor : " & txtSend & vbCrLf txtSend = "" Exit Sub errorSub: MsgBox "Error : " & Err.Description Winsock1_Close End Sub Private Sub DerechaT_Timer() Call Pulsar_Tecla(vbKeyRight) End Sub Private Sub Form_Load() Call bntListen_Click AbajoT.Enabled = False ArribaT.Enabled = False DerechaT.Enabled = False IzquierdaT.Enabled = False If txtlog.Caption = "Abajo" Then AbajoT.Enabled = True ArribaT.Enabled = False DerechaT.Enabled = False IzquierdaT.Enabled = False End If If txtlog.Caption = "Arriba" Then AbajoT.Enabled = False ArribaT.Enabled = True DerechaT.Enabled = False IzquierdaT.Enabled = False End If If txtlog.Caption = "Derecha" Then AbajoT.Enabled = False ArribaT.Enabled = False DerechaT.Enabled = True IzquierdaT.Enabled = False End If If txtlog.Caption = "Izquierda" Then AbajoT.Enabled = False ArribaT.Enabled = False DerechaT.Enabled = False IzquierdaT.Enabled = True End If End Sub Private Sub IzquierdaT_Timer() Call Pulsar_Tecla(vbKeyLeft) End Sub Private Sub Winsock1_Close() ' Finaliza la conexión Winsock1.Close txtlog = txtlog & "*** Desconectado" & vbCrLf End Sub Private Sub Winsock1_ConnectionRequest(ByVal requestID As Long) If Winsock1.State <> sckClosed Then Winsock1.Close ' close End If Winsock1.Accept requestID txtlog = "Cliente conectado. IP : " & _ Winsock1.RemoteHostIP & vbCrLf End Sub Private Sub Winsock1_DataArrival(ByVal bytesTotal As Long) Dim dat As String Winsock1.GetData dat, vbString txtlog = dat & vbCrLf End Sub ' cuando se produce un error lo envía '''''''''''''''''''''''''''''''''''''''''''''''''''''' Private Sub Winsock1_Error(ByVal Number As Integer, _ Description As String, _ ByVal Scode As Long, _ ByVal Source As String, _ ByVal HelpFile As String, _ ByVal HelpContext As Long, _ CancelDisplay As Boolean) txtlog = txtlog & "*** Error : " & Description & vbCrLf Winsock1_Close End Sub
Gracias de Antemano