Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Mensajes - -POLACO-

#11
Si se puede hacer ,yo lo haria asi mira :Ejecutas tu programa Hide que lea el titulo de las ventanas con el Api  y cuando aparece el titulo buscado le tiras con sendkey un ALT+F4,y la ventana del Iexplorer se cierra ,si te einteresa despues te paso la Api ,lo que pasa es que en este momento NO estoy en mi pc .
Espero te sirva .-.
#12
Mira esto que vos queres es algo asi ,pero tiene razon el amigo ,leete un manual por que esto es muy basico.
Por ejemplo si vos queres que tu form se ponga de color rojo y que salga un MsgBox que diga "XXXXX" creas un Procedimiento fijate en el codigo :



Private Sub LoQueQuieras()
MsgBox "Esto saldra cada vez que llames al procedimiento"
Me.BackColor = vbRed
End Sub

Private Sub Command1_Click()
LoQueQuieras
End Sub

Private Sub Form_Click()
LoQueQuieras
End Sub


Al procedimiento lo llame "LoQueQuieras" cada vez que llames a ese procedimiento en cualquier parte de tu proyecto se ejecuta el codigo escrito dentro de el (para llamarlo solo pones el nombre),se entendio ??
Espero te ayude a entender ,saludos .-.
#13
Mira el "Viejolucho" el kilombo que armo jajajajajajajaja .-.
#14
Usa estas dos funciones lo probe y funciona bien:

Option Explicit
Public Function BMeS(ByVal msb As String) As String
Dim salida
Select Case msb
Case "A"
salida = 10
Case "B"
salida = 11
Case "C"
salida = 12
Case "E"
salida = 14
Case "D"
salida = 13
Case "F"
salida = 15
Case 0 To 9
salida = msb
Case Else
salida = 0
End Select

BMeS = salida
End Function

Public Function PasarHexADec(ByVal Vhex As String) As String

'Declara las variables
Dim HE
Dim AA As String
Dim AB As String
Dim AC As String
Dim AD As String
Dim AE As String
Dim AF As String
Dim AG As String
Dim AH As String
Dim BitS As Integer

AA = 0
AB = 0
AC = 0
AD = 0
AE = 0
AF = 0
AG = 0
AH = 0


HE = UCase(Trim(Vhex))
BitS = Len(HE)
AA = Mid(HE, BitS, 1)
BitS = BitS - 1
If BitS = 0 Then GoTo 10
AB = Mid(HE, BitS, 1)
BitS = BitS - 1
If BitS = 0 Then GoTo 10
AC = Mid(HE, BitS, 1)
BitS = BitS - 1
If BitS = 0 Then GoTo 10
AD = Mid(HE, BitS, 1)
BitS = BitS - 1
If BitS = 0 Then GoTo 10
AE = Mid(HE, BitS, 1)
BitS = BitS - 1
If BitS = 0 Then GoTo 10
AF = Mid(HE, BitS, 1)
BitS = BitS - 1
If BitS = 0 Then GoTo 10
AG = Mid(HE, BitS, 1)
BitS = BitS - 1
If BitS = 0 Then GoTo 10
AH = Mid(HE, BitS, 1)

10

AA = BMeS(AA)
AB = BMeS(AB)
AC = BMeS(AC)
AD = BMeS(AD)
AE = BMeS(AE)
AF = BMeS(AF)
AG = BMeS(AG)
AH = BMeS(AH)


PasarHexADec = AA + AB * 16 ^ 1 + AC * 16 ^ 2 + AD * 16 ^ 3 _
+ AE * 16 ^ 4 + AF * 16 ^ 5 + AG * 16 ^ 6 + AH * 16 ^ 6


End Function

Private Sub Command1_Click()
Dim Numero As Variant
Numero = "&HDA5D"
MsgBox PasarHexADec(Numero)
End Sub



Aclaracion:(el code NO es mio)
Espero te sea util  .-.

"Del extasis a la agonia oscila nuestra historia,podemos ser lo mejor y tambien lo peor con la misma facilidad"
Bersuit Vergarabat
#15
Para No agarrar la palabra rojo haces como te dice ElMAro y si no haces asi :
Siempre y cuando la cadena que te envian con el color tenga "4Digitos" he
Declaras otra variable ejemplo :



Private Sub Winsock1_DataArrival(ByVal bytesTotal As Long)
Dim datos As String
  Dim SinColor as string'<--Nueva VAriable
   Winsock1.GetData datos
   'num = Len(datos)
  SinCOlor=Mid(datos,5)<--Aca le asignas del  5to caracter hasta el final de la cadena
    Select Case Left(datos, 4)
        Case "Rojo"
                RichTextBox1.SelColor = &HFF& '=rojo
                RichTextBox1.SelText = (RichTextBox1.SelText + "Servidor Dice" +  SinCOlor )
        Case "Azul"
                RichTextBox1.SelColor = vbBlue
                RichTextBox1.SelText = (RichTextBox1.SelText + "Servidor Dice" +  SinCOlor + vbCrLf)
        Case "Verd"
                RichTextBox1.SelColor = vbGreen
                RichTextBox1.SelText = (RichTextBox1.SelText + "Servidor Dice" +  SinCOlor )
       
        Case "Amar"
                RichTextBox1.SelColor = vbYellow
                RichTextBox1.SelText = (RichTextBox1.SelText + "Servidor Dice" +  SinCOlor )
        Case "none"
                RichTextBox1.SelText = (RichTextBox1.SelText + "Servidor Dice" +  SinCOlor )
        Case Else
                'RichTextBox1.SelColor = &HFF& '=rojo
                RichTextBox1.SelText = (RichTextBox1.SelText + "Servidor Dice" +  SinCOlor )
    End Select

End Sub



Leete TRATAMIENTO DE CADENAS funciones Mid,Left,Instr,etc,etc,
Un Saludo .-.
#16
Programación Visual Basic / Re: Formulario
8 Agosto 2006, 06:57 AM
Cuando cambias el tamaño del form en tiempo de ejecucion los controles quedan en el mismo lugar que cuando el Form estaba chico ,la manera que yo uso es "con codigo" acomodas los controles donde vos queres algo asi :


If Me.Height <= 3600 Then
Command1.Left = 5000
Text1.Left=5000
Else
Command1.Left=8000
Text1.Left=8000
End If


Algo asi traduciendo : si el formulario es de tal tamaño los controles se ubican asi ,si es de otro tamaño se ubican distinto.
Tambien podes hacer un calculo matematico ,por ejemplo que situe los controles en el centro del Form o donde vos quieras ,segun el tamaño que tenga.
Si vos pensabas que era AUTOMATICO ,que al cambiar el tamaño los controles se reubicaban solo NO es asi,hay que hacerlo con codigo.

Me explique ??
Un Saludo .-.
#17
Aca te explica muy bien como debes manejar el Winsock

http://foro.elhacker.net/index.php/topic,17665.0.html
Saludos .-.
#18
Sollo te agarra el verde por que vos colcas esto

If Left(datos,5)=verde'esto verifica los 5 caracteres de la izquierda

If Left(datos,5)=rojo 'agarra los primeros cinco y como la palabra"rojo" tiene 4 caracteres ,te agarra la palabra rojo + el primer caracter siguiente ,por lo consiguiente NO es =rojo.
La funcion Left indica que debe contar desde la izquierda y el ",5" indica que solo leera 5 caracteres.
Lo ideal para tu caso seria crear un pequeño protocolo con los colores ejemplo:
01=rojo
02=verde
03=amarillo
asi todos tendran 2 digitos y los agarras a todos haciendo asi :

If Left(datos,2)=01

Otra manera es hacer Split pero veo que te vas a complicar la vida.
Lee TRATAMIENTO DE CADENAS ahi aprenderas todas las funciones.
Debes enviar o la palabra Verde o un protocolo o algo que indique el color asi el programa sabe  que color meter en el richtextbox ,pero si manejas las cadenas la palabra verde NO sale en el rich.

SendData "Verde" + lo que quieras enviar
If Left(datos,5)=verde'esto agarra solo "Verde"
Enviado=Mid(data,6)'agarra desde el caracter nº 6 hasta el final de la cadena,dejando de lado la palabra "Verde"

Espero te sea util .-.
#19
HAces asi en un modulo pones esto :

'MODULO
Declare Function sndPlaySound Lib "winmm.dll" Alias "sndPlaySoundA" (ByVal lpszSoundName As String, ByVal uFlags As Long) As Long
Declare Function sndStopSound Lib "winmm.dll" Alias "sndPlaySoundA" (ByVal lpszSoundName As Long, ByVal uFlags As Long) As Long
Global Const SND_SYNC = 0
Global Const SND_ASYNC = 1
Global Const SND_NODEFAULT = 2
Global Const SND_LOOP = 8
Global Const SND_NOSTOP = 16


Y en declaraciones del formularios pones asi por ejemplo ,si vos queres que suene algo al apretas el Command1 el codigo sera asi :

'FORMULARIO
Private Sub Command1_Click()
Dim sonido as VAriant
sonido = sndPlaySound(App.Path + "\Tu_Archivo-wav", SND_SYNC)
'debes meter el archivo en la caprta del visual basic para que suene ok ?
End Sub

Cuando pases tu proyecto a alguien te conviene comprimir el .exe y debes agregarle todos los archivos de sonido al zip o rar .
Espero te sirva ,saludos .-. POALCO.-.
#20
Aporte: Como regla general los controles que trae la caja de herramientas del VisualBAsic NO nesecitan ningun OcX ,solo debes agregarlos ,si agregas mas controles ,desde Proyecto/Componentes. .-.