Shordi   30-08-2021, 12:09
#10
(30-08-2021, 09:56)gambafeliz escribió: Shordi por un lado tienes razón pero por otro creo que no. Ya que aunque es un hilo del foro antiguo yo creo y solo creo que tu y yo seguimos tu explicación por otros medios. Pero mi memoria no me permite discutir contigo sobre cosas que tu sabes tan bien y no yo.

Como suele ocurrir conmigo tu seguro que tienes mas razón que yo.

Este es el enlace nuestro:
https://foro.gambas-es.org/viewtopic.php...componente

Voy a probar otra cosa, por que al ver este enlace observo que tu me enseñas algo que yo con mi solución actual infrinjo de tus explicaciones magistrales.

Por otra parte quiero decirte que en el enlace vigilamos un Form y yo solo manejo un TextBox1 que lo contiene el Form.

Gracias como siempre.

Nota:

Mira lo curioso es que en el formulario externo que lo llama con este código si funciona:

Código:
For Each c As Object In ControlPersonal.Children
c.txt.SetFocus ' txt es TextBox1 en el control personal
Next

Es que cuando uno pone ControlPersonal.SetFocus va al control pero no tengo ni idea a donde aunque ponga puntos de interrupción por eso no doy con la solución normal donde el control tras pasar .SetFocus desde el Exterior el asume el prompt en la caja de texto. ????
En lugar de esto:
Código:
Public Sub obsComponente_GotFocus()

Raise GotFocus() '' Levanto el evento para el componente o formulario <---- Aquí entra al hacer setfocus por código desde el exterior.
End
Prueba esto:
Código:
Public Sub obsComponente_GotFocus()

$texto.txt.setfocus()

End

Otra cosa a probar es añadir ésto al _New() del componente



Código:
....
....
Private $texto As Textbox
Private $obs As Observer

Public Sub _new()

    $texto = New _TextTips(Me) 'Creamos la instancia del formulario
    $obs = New Observer(_textbox) As "elForm" 'creamos el observador del formulario que detectará los eventos que éste levante
    Me.Proxy = $texto   'Con esto el componente hereda los eventos de teclado y ratón del control $texto. Ignoro si se aplica a setfocus y gotfocus, pero por probar no pierdes nada
    
End
.....



Y por último, me siento tonto buscando corregir los defectos de un código que no he visto y que no quieres mostrar. Sube el código si quieres ayuda.

Saludos

No podemos regresar
  
Usuarios navegando en este tema:
Powered By MyBB, © 2002-2025 MyBB Group.
Made with by Curves UI.