elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.
 
Inicio Ayuda Ingresar Registrarse
05 Septiembre 2008, 14:01  



+  Foro de elhacker.net
|-+  Programación
| |-+  Programación VB (Moderadores: ||MadAntrax||, E0N)
| | |-+  Problema con .SetFocus en VB6
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Imprimir
Autor Tema: Problema con .SetFocus en VB6  (Leído 89 veces)
gulabyte

Desconectado Desconectado

Mensajes: 25


Ver Perfil
Problema con .SetFocus en VB6
« en: 20 Junio 2008, 21:10 »


El problema es que quiero que cuando el programa abra un pequeño form para insertar una contraseña, el cursor (el foco) se instale en el textbox para insertar el pass.

He intentado poniendo txtPass.SetFocus en el Form_load y me salta "llamada a procedimientos o argumentos no válidos".
Se me ocurre que podría ser porque el textbox o el form en sí no está cargado aún y no se puede aplicar el SetFocus, es decir que das la orden de establecer foco a un objeto que todavía no se ha creado y que se creará cuando finalize el form_load.
Quiero decir que podría ser porque está antes de las lineas de crear el form, el textbox y eso, aunque no se vea, claro. Algo así:

Private Sub Form_load()
     txtPass.SetFocus
     [lineas que no se ven y que son las que crean el form o los objetos en dicho form]
End Sub

He intentado con la propiedad Tab en el Form poniendola a 1 o a 0 pero nada, y el default tampoco se puede poner aunque lo tengo en un command, para que introduzca el pass al darle al enter.

La idea es simplificar el trabajo haciendo que el cursor se ponga en el textbox para así escribir directamente la clave (sin llevar el cursor con el ratón) y luego al darle al enter que siga a delante.

Se me ocurre insertar un timer en el form_load con unos milisegundos y después llamar al setfocus desde el timer aunque sería un poco chapuza no??

Que alguien me ayude a solucionar esta chorradilla!!

benga foro.fos
En línea
cobein

Desconectado Desconectado

Mensajes: 407



Ver Perfil WWW
Re: Problema con .SetFocus en VB6
« Respuesta #1 en: 20 Junio 2008, 21:17 »

Private Sub Form_Activate()
Text1.SetFocus
End Sub
En línea

gulabyte

Desconectado Desconectado

Mensajes: 25


Ver Perfil
Re: Problema con .SetFocus en VB6
« Respuesta #2 en: 20 Junio 2008, 21:30 »


Exacto !! Gracias por la respuesta Cobein. Rápida, sencilla y eficaz.

Me ha puesto el cursor en el textbox a la primera, y se puede escribir.

Me pregunto si será por eso de que cuando ejecutas el form_load() todavía no se han cargado los objetos y el form_activate se inicia cuando ya están todos los objetos (cmd, txtbox, combo, ...) cargados.

De ahora en adelante usaré el form_activate si no es en algún caso especial que quiera usar el form_load ahora que entiendo más o menos como va el asunto.

Muy interesante, de nuevo, gracias.

Salu10 !!
En línea
Páginas: [1] Ir Arriba Imprimir 
Ir a:  







Consolas     La Web de Goku     MilW0rm     MundoDivx

Hispabyte     Truzone     TodoReviews     ZonaPhotoshop

hard-h2o modding    Foros de ayuda    Yashira.org    Videojuegos    indetectables.net   

Noticias Informatica    Seguridad Informática    ADSL    Foros en español    eNYe Sec

Todas las webs afiliadas están libres de publicidad engañosa.

Powered by SMF 1.1.5 | SMF © 2006-2008, Simple Machines LLC