Private Sub Command1_Click()
Dim a As Integer
a = 23
MsgBox a
End Sub
Private Sub Command2_Click()
MsgBox a
End Sub
como puedo hacer eso osea declaro un variable con un valor que al ahcer click en el boton uno me muestra el mensaje con el valor pero como hago para que me muestre la variable del boton 1 en el boton 2 ? alguien q me ayude plz
A otra sin dejarla como variable global.
Para ir mas al callo de lo que quiero hacer es esto:
Private Sub ws_DataArrival(Index As Integer, ByVal bytesTotal As Long)
Dim datos As String
Dim perro As String
ws(Index).GetData datos
ws(indice).SendData datos
End Sub
Private Sub ws1_DataArrival(Index As Integer, ByVal bytesTotal As Long)
ws1(Index).GetData indice
End Sub
entonces el indice lo quiero pescar en el dataarrival del ws pero no me lo toma me lo deja como vacio nose si alguien sabra como hacerlo espero su ayuda amigos
Lo de tu primer post:¿Por que sin usar variables globales?
Si no usas variables globales la variable pierde el valor asignado al terminar la funcion, asi que al volver a ejecutar la funcion empieza de cero otra vez.
Y al no ser global otra funcion no puede leerla porque no esta declarada.
Tenes dos opciones:
1- O usar variables globales.
2- O pasar datos de funcion en funcion, ejemplo:
CitarFuncion UNO()
Dim MisDatos as String
MisDatos = "Hola!"
msgbox MisDatos
DOS (MisDatos)
End Funcion
Funcion DOS(Datos as String)
msgbox Datos
End Funcion
En tu ultimo post:Suponiendo que ws es del programa UNO y ws1 del programa DOS
UNO toma los datos que se le envian y los vuelve a enviar a DOS ¿Para que?
Como sea, no estas usando ningun Index, la forma correcta de hacerlo es:
CitarPrivate Sub ws_DataArrival(Index As Integer, ByVal bytesTotal As Long)
Dim datos As String
ws.GetData datos
ws.SendData datos
End Sub
Private Sub ws1_DataArrival(Index As Integer, ByVal bytesTotal As Long)
Dim datos1 As String
ws1.GetData datos1
End Sub
PD:Postea tu duda mas puntual de que es lo que queres hacer exactamente, asi podre decirte de que forma hacerlo.
No hace falta que sea una variable global, con que este en la parte de declaraciones del formulario va a ir bien (solo si los sockets estan en el mismo formulario). De lo contrario podrias o declararla en un modulo o como publica en alguno de los formularios. Despues para usarla pones:
MsgbBox Fromulario.Variable
Citarno estas usando ningun Index, la forma correcta de hacerlo es:
Lo esta usando bien, si el WS tiene index, su sintaxis es:
WS(Index).Propiedad
Saludos y por favor, se un poco mas claro.-
Dim a As String
Private Sub Form_Load()
a = 23
End Sub
Private Sub Command1_Click()
MsgBox a
End Sub
Private Sub Command2_Click()
MsgBox a
End Sub
el siguiente solo si presionas primero el command1
Dim a As String
Private Sub Command1_Click()
a = 23
MsgBox a
End Sub
Private Sub Command2_Click()
MsgBox a
End Sub