Foros del Web » Programación para mayores de 30 ;) » Programación General » Visual Basic clásico »

Problemas con Visual Basic 6

Estas en el tema de Problemas con Visual Basic 6 en el foro de Visual Basic clásico en Foros del Web. Funciones en Visual Basic Feliz Año Nuevo a todos: está es mi primera vez en este foro y comenzaré con una pregunta: Estoy aprendiendo Visual ...
  #1 (permalink)  
Antiguo 02/01/2003, 15:42
 
Fecha de Ingreso: enero-2003
Ubicación: Viña del Mar. Chile
Mensajes: 5
Antigüedad: 21 años, 4 meses
Puntos: 0
Pregunta Funciones en Visual Basic 6

Funciones en Visual Basic
Feliz Año Nuevo a todos: está es mi primera vez en este foro y comenzaré con una pregunta:
Estoy aprendiendo Visual Basic desde un Libro. El libro pone una función que calcula la raíz cuadrada, pero no sé a que control asignarsela. Para probarla puse en un formulario lo sgte:
- un command button
- un text box
- un label box
Entonces en el label box pongo lo sgte.: Calcular raíz cuadrada
- El text box lo dejo para que el usuario escriba su numero
- El command button es para que cuando el usuario haga clic en él se cambie el número del text box a su raíz cuadrada.
La codificación que entrega el libro es la siguiente:
"
Function dblSqrt(dblParameter As Double) As Double
If dblParameter < 0 Then
dblSqrt = -1
Else
dblSqrt = Sqr(dblParameter)
End If
End Function
"
Sin embargo, no sé realmente donde poner este codigo, ni como relacionar los controles para que esto funcione. Lo único que se me ocurre es llamar la función desde el command button pero así parece que no se hace porque tengo qque relacionar la función con el número que escriban en el text box. Si alguien en este foro me pudiera ayudar se lo agradecería muchísimo. Tal vez es muy básico lo que pregunto, pero siempre se empieza por lo básico...jejeje.

Última edición por epetao; 02/01/2003 a las 15:49
  #2 (permalink)  
Antiguo 02/01/2003, 16:48
Avatar de Jorge_Mota  
Fecha de Ingreso: diciembre-2002
Ubicación: Chapinlandia :-D
Mensajes: 725
Antigüedad: 21 años, 5 meses
Puntos: 11
supongamos que tu textbox se llama textbox1
tu command button se llaman cmdcommandbutton1

le das doble click al command button y te aparecera un codigo que
dira algo asi como

cmdcommandbutton1_click()

end sub

en medio de esas lineas pon
dblSqrt(textbox1.value)

luego abajo de end sub

escribes lo que pone el libro

function dblSqrt(......


end function....
__________________
Jorge Mota
Blog
Gubiz estafa
  #3 (permalink)  
Antiguo 02/01/2003, 17:12
 
Fecha de Ingreso: enero-2003
Ubicación: Viña del Mar. Chile
Mensajes: 5
Antigüedad: 21 años, 4 meses
Puntos: 0
me aparece el siguiente mensaje: Runtime error '424'
Object Required
como soluciono eso?. será por ejemplo que en la función utiliza una variable que se llama dblparameter que es de tipo double y que al llamar la función dblsqrt con text1 como variable
function dblsqrt(text1.value) son de distinto tipo?. Estoy super confundido con esto.... como lo solucióno?
  #4 (permalink)  
Antiguo 02/01/2003, 17:22
Avatar de Jorge_Mota  
Fecha de Ingreso: diciembre-2002
Ubicación: Chapinlandia :-D
Mensajes: 725
Antigüedad: 21 años, 5 meses
Puntos: 11
pega todo el codigo que tengas.
aca
__________________
Jorge Mota
Blog
Gubiz estafa
  #5 (permalink)  
Antiguo 02/01/2003, 17:39
 
Fecha de Ingreso: enero-2003
Ubicación: Viña del Mar. Chile
Mensajes: 5
Antigüedad: 21 años, 4 meses
Puntos: 0
aquí vamos con el código

Hola de nuevo:
Me dí cuenta de algo, y es que el textbox tenía nombre text1 y no textbox1 como le había puesto, fue una despistada, pero ahora me aparece el siguiente mensaje cuando hago clic en el botón:

compile error:
method or data member not found

de todas formas aquí está todo el código:

Private Sub Command1_Click()
dblSqrt (text1.Value)
End Sub

Function dblSqrt(dblParameter As Double) As Double
If dblParameter < 0 Then
dblSqrt = -1
Else
dblSqrt = Sqr(dblParameter)
End If

End Function
  #6 (permalink)  
Antiguo 04/01/2003, 13:05
Avatar de RootK
Moderador
 
Fecha de Ingreso: febrero-2002
Ubicación: México D.F
Mensajes: 8.004
Antigüedad: 22 años, 2 meses
Puntos: 50
Cita:
dblSqrt (text1.Value)
No sería algo como esto:


.....
....
a = Cdbl(text1.text) 'COnvertir primero el valor del text1 a doble porque es el valor que recibe como parámetro.. y luego mandas a llamar a la funcion...

dblSqrt (a)


Saludos....
__________________
Nadie roba nada ya que en la vida todo se paga . . .

Exentrit - Soluciones SharePoint & Net
  #7 (permalink)  
Antiguo 04/01/2003, 13:27
 
Fecha de Ingreso: enero-2003
Ubicación: Viña del Mar. Chile
Mensajes: 5
Antigüedad: 21 años, 4 meses
Puntos: 0
gracias

Ya lo he solucionado, además le añadí un cuadro de diálogo si desea salir o no... ahora mi consulta es cuando el usuario desea salir qque instrucción se debe poner para que termine de ejecutarse el programa... alguna vez lo ví pero ahora ya se me olvidó..jejej. De todas formas aquí te mando todo el código del programita:

Function dblSqrt(dblParameter As Double) As Double
If dblParameter < 0 Then
dblSqrt = -1
Else

dblSqrt = Sqr(dblParameter)
End If
End Function

Private Sub Command1_Click()
Text1.Text = dblSqrt(CDbl(Text1.Text))
End Sub

Private Sub Command2_Click()
Dim Msg, Style, Title, Help, Ctxt, Response, MyString

Msg = "Do you want to continue ?" ' Define message.

Style = vbYesNo + vbCritical + vbDefaultButton2 ' Define buttons.

Title = "MsgBox Demonstration" ' Define title.

Help = "DEMO.HLP" ' Define Help file.

Ctxt = 1000 ' Define topic

' context.

' Display message.

Response = MsgBox(Msg, Style, Title, Help, Ctxt)

If Response = vbYes Then ' User chose Yes.

MyString = "Yes" ' Perform some action.
Text1.Text = ""
Else ' User chose No.

MyString = "No" ' Perform some action.
***********aquí quiero poner una instrucción para salir del programa****************
End If

End Sub

Ciao, y gracias
  #8 (permalink)  
Antiguo 05/01/2003, 19:33
Avatar de RootK
Moderador
 
Fecha de Ingreso: febrero-2002
Ubicación: México D.F
Mensajes: 8.004
Antigüedad: 22 años, 2 meses
Puntos: 50
Si deseas salirte de tu formulario completamente sería con

Unload me

pero si deseas salir de ese evento sería:

exit sub


Saludos
  #9 (permalink)  
Antiguo 08/01/2003, 21:44
 
Fecha de Ingreso: enero-2003
Ubicación: Viña del Mar. Chile
Mensajes: 5
Antigüedad: 21 años, 4 meses
Puntos: 0
De acuerdo Muchísimas gracias

Estos pequeños detalles son muy útiles para mi que estoy empezando.. muchísimas gracias RootK por tu ayuda. Era justo lo que necesitaba. Saludos
  #10 (permalink)  
Antiguo 09/01/2003, 09:17
Avatar de RootK
Moderador
 
Fecha de Ingreso: febrero-2002
Ubicación: México D.F
Mensajes: 8.004
Antigüedad: 22 años, 2 meses
Puntos: 50
De nada.. cualquier cosa por aqui seguimos...

Saludos
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta

SíEste tema le ha gustado a 1 personas




La zona horaria es GMT -6. Ahora son las 13:02.