Paso por parametros
Quisiera hacer una funcion pasando por parametros un componente, como puedo hacer esto,,,, Por ejemplo en todas las cajas de texto de mi programa yo solo permito que se escriba en mayuscula por lo que repito varias lineas de codigo que podria convertir en una funcion si supiera como pasar un componente como parametro.... lea detenido lo siguiente
***********************************************
Function Cambiar(aqui que reciba el componente con el que estoy trabajando)
Dim I As Integer
el componente que recibio la funcion.Text = UCase(el componente que recibio la funcion.Text)
I = Len(el componente que recibio la funcion.Text)
el componente que recibio la funcion.SelStart = I
End Function
Private Sub TxtBoxTexto_Change()
Cambiar(enviarle a la funcion el componente TxtBoxTexto)
End Sub
***********************************************
Function Cambiar(aqui que reciba el componente con el que estoy trabajando)
Dim I As Integer
el componente que recibio la funcion.Text = UCase(el componente que recibio la funcion.Text)
I = Len(el componente que recibio la funcion.Text)
el componente que recibio la funcion.SelStart = I
End Function
Private Sub TxtBoxTexto_Change()
Cambiar(enviarle a la funcion el componente TxtBoxTexto)
End Sub
Espero entender: Quieres una funci贸n que convierta diversos textbox a mayuscula diciendole cual es el control?
Function CambiarMay (txt as TextBox) 'Aqu铆 le dices que los pasar谩s es un TextBox
txt.text=Ucase(txt.text)
end function
En cada textbox llamas la funci贸n (ya sea en Change si quieres que el cambio sea autom谩tico, o al salir del control). si tienes los text creados como matrix es m谩s f谩cil:
Private Sub txtDato_Change(Index As Integer)
CambiaMay txtdato(index)
End Sub
Function CambiarMay (txt as TextBox) 'Aqu铆 le dices que los pasar谩s es un TextBox
txt.text=Ucase(txt.text)
end function
En cada textbox llamas la funci贸n (ya sea en Change si quieres que el cambio sea autom谩tico, o al salir del control). si tienes los text creados como matrix es m谩s f谩cil:
Private Sub txtDato_Change(Index As Integer)
CambiaMay txtdato(index)
End Sub
No, no lo tengo como una matriz....
te muestro un poco de mi codigo, donde repito varias veces las mismas instrucciones, y es lo que quiero eliminar haciendo la funcion....
************************************************************
Private Sub TxtBoxPlataforma_Change()
Dim I As Integer
TxtBoxPlataforma.Text = UCase(TxtBoxPlataforma.Text)
I = Len(TxtBoxPlataforma.Text)
TxtBoxPlataforma.SelStart = I
End Sub
Private Sub TxtBoxPozo_Change()
Dim I As Integer
TxtBoxPozo.Text = UCase(TxtBoxPozo.Text)
I = Len(TxtBoxPozo.Text)
TxtBoxPozo.SelStart = I
End Sub
Private Sub TxtBoxFechaInicio_Change()
Dim I As Integer
TxtBoxFechaInicio.Text = UCase(TxtBoxFechaInicio.Text)
I = Len(TxtBoxFechaInicio.Text)
TxtBoxFechaInicio.SelStart = I
End Sub
*****************************************************
como le diria a mis procedimientos que pasen el componente TxtBox a la funcion que crearia sin tener matriz
Ayudameeeeeeeeeeeeeeeeeeeee
te muestro un poco de mi codigo, donde repito varias veces las mismas instrucciones, y es lo que quiero eliminar haciendo la funcion....
************************************************************
Private Sub TxtBoxPlataforma_Change()
Dim I As Integer
TxtBoxPlataforma.Text = UCase(TxtBoxPlataforma.Text)
I = Len(TxtBoxPlataforma.Text)
TxtBoxPlataforma.SelStart = I
End Sub
Private Sub TxtBoxPozo_Change()
Dim I As Integer
TxtBoxPozo.Text = UCase(TxtBoxPozo.Text)
I = Len(TxtBoxPozo.Text)
TxtBoxPozo.SelStart = I
End Sub
Private Sub TxtBoxFechaInicio_Change()
Dim I As Integer
TxtBoxFechaInicio.Text = UCase(TxtBoxFechaInicio.Text)
I = Len(TxtBoxFechaInicio.Text)
TxtBoxFechaInicio.SelStart = I
End Sub
*****************************************************
como le diria a mis procedimientos que pasen el componente TxtBox a la funcion que crearia sin tener matriz
Ayudameeeeeeeeeeeeeeeeeeeee
Debes crear una funci贸n, por ejemplo CambiarMay, a esta function les puedes pasar cualquier par谩metro, incluso un objeto o componente, en este caso un textbox. Para esto usas el AS TEXTBOX. El nombre de la variable (o del componente en tu caso ) se lo das t煤:
Private function CambiarMay (txtMio as TextBox)
txtMio.text=ucase(txtMio.text)
end function
Ahora, en el _Change de cada uno de tus TextBox debes s贸lo llamar la funci贸n CambiarMay y pasar como par谩metro el propio TextBox.
Private Sub TxtBoxPlataforma_Change
cambiarMay txtboxPlataforma
end sub
驴OK?
Espero que te sirva.
Private function CambiarMay (txtMio as TextBox)
txtMio.text=ucase(txtMio.text)
end function
Ahora, en el _Change de cada uno de tus TextBox debes s贸lo llamar la funci贸n CambiarMay y pasar como par谩metro el propio TextBox.
Private Sub TxtBoxPlataforma_Change
cambiarMay txtboxPlataforma
end sub
驴OK?
Espero que te sirva.
