elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Tutorial básico de Quickjs


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  .NET (C#, VB.NET, ASP)
| | | |-+  Programación Visual Basic (Moderadores: LeandroA, seba123neo)
| | | | |-+  Problema con .SetFocus en VB6
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Problema con .SetFocus en VB6  (Leído 4,619 veces)
gulabyte

Desconectado Desconectado

Mensajes: 97



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


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: 759



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

Private Sub Form_Activate()
Text1.SetFocus
End Sub


En línea

http://www.advancevb.com.ar
Más Argentino que el morcipan
Aguante el Uvita tinto, Tigre, Ford y seba123neo
Karcrack es un capo.
gulabyte

Desconectado Desconectado

Mensajes: 97



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


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 Respuesta Imprimir 

Ir a:  
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines