Visual Basic - Formato de texto en VB 6.0

Life is soft - evento anual de software empresarial
 
Vista:

Formato de texto en VB 6.0

Publicado por Javier García Pérez (5 intervenciones) el 03/08/2008 20:40:42
Hola.
Estoy haciendo un programa en el que hay dos textbox. Dependiendo de los valores que haya en esos textbox aparece una imagen u otra:

caso 1º) si el textbox1<((textbox2)/2) entonces se ve la imagen 1
caso 2º) si el textbox1=textbox2 entonces se ve la imagen 2
caso 3º) si el textbox1>((textbox2)/2) entonces se ve la imagen 3

El problema que tengo es que mientras el número del textbox1 sea menor que 10 funciona correctamente, pero si es mayor de 10 solo funciona para los dos primeros casos.
¿Me podéis ayudar?
Muchas gracias.

Os mando el código, por si sirve de algo:
If Text1 = 0 Or Text1 = Text2 Then
Picture71(0).Visible = True
Picture80(0).Visible = True
End If
If Text1 < ((Text2) / 2) And Text1 > 0 Then
Picture71(20).Visible = True
Picture80(5).Visible = True
End If
If Text1 = ((Text2) / 2) Then
Picture71(16).Visible = True
Picture80(4).Visible = True
End If
If Text1 > ((Text2) / 2) And Text1 < Text2 Then
Picture71(24).Visible = True
Picture80(6).Visible = True
End If

Y este es el código de los textos para que solo se puedan meter números:
Option Explicit

Dim sDecimal As String

Private Sub Text1_KeyPress(KeyAscii As Integer)
Dim sCar As String * 1
sCar = Chr(KeyAscii)

If sCar = "." Or sCar = "," Then
' comprueba si se ha pulsado coma o punto y lo convierte al
' formato del sistema
KeyAscii = IIf(sDecimal = ",", 44, 46)
sCar = Chr(KeyAscii)
' si ya se ha puesto un punto decimal, no admite otro
If (InStr(Text1, sCar) > 0) Then
KeyAscii = 0
Exit Sub
End If
ElseIf InStr("0123456789.," & Chr(8), sCar) = 0 Then
' sólo admite números, signo negativo, punto, coma y retroceso
KeyAscii = 0
Exit Sub
' comprueba que el signo menos esté sólo al principio
' Nota: Si no queremos negativos, quitar esta condición
ElseIf sCar = "-" Then
If InStr(2, "-", Text1) = 0 Then
KeyAscii = 0
End If
End If
End Sub
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Formato de texto en VB 6.0

Publicado por igor (633 intervenciones) el 03/08/2008 22:20:51
Hola Javier García Pérez, igual deberías empezar por mejorar tu programación. Ese código que tienes parece más un dinosario.

Ya es la segunda vez que veo lo del InStr("0123456789.," para filtrar teclas. Ya contesté a uno que hacía lo mismo. No serás tú no???? Es que me molesta bastante dar consejos para que luego la gente pase.

Te lo pondré bien clarito.

Private Sub Text1_KeyPress(KeyAscii As Integer)
Select Case KeyAscii
Case 48 To 57 'Numeros
Case 8 ' Tabulador
Case 13 ' Return
Case ".", "," ' Punto y coma decimal
KeyAscii=44
If (InStr(Text1, ",") > 0) Then KeyAscii = 0
Case "-"
If InStr(2, "-", Text1) = 0 Then KeyAscii = 0
Case Else
KeyAscii = 0
End Select
End Sub

No solo es más pequeño, sino más legible y más facil de modificar y ampliar.

Si sigues empeñado en ir por el mal camino no cuentes conmigo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Formato de texto en VB 6.0

Publicado por igor (633 intervenciones) el 03/08/2008 22:43:45
Que si gabacho, yo también te quiero guapetón.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Formato de texto en VB 6.0

Publicado por igor (633 intervenciones) el 03/08/2008 22:47:55
besis, besis, besis, besis :-)
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Formato de texto en VB 6.0

Publicado por igor (633 intervenciones) el 03/08/2008 22:57:19
Si, lo que no sabia es que estubiste mirando!?!?!?!?!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Formato de texto en VB 6.0

Publicado por noelia (1 intervención) el 10/12/2008 19:09:52
programa que imprima los numeros de menor a mayor en un bucle del 1 al 20.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Formato de texto en VB 6.0

Publicado por Javier García Pérez (5 intervenciones) el 04/08/2008 20:04:43
Hola igor, no fui yo el que te pregunté en otra ocasión, es la primera vez que escribo en este foro. De todas maneras, gracias, lo cambiaré por el código que tú me has dado, es más corto y legible, gracias.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar