Page 1 of 1

Problema con asignación de focus.

PostPosted: Mon Jun 19, 2023 12:52 am
by José Camilo
Buenas Noches.
Tengo un dialogo donde hay:
varios Botones.
1 Xbrowse.
15 gets
1 buttombar asignada al xBrowse

el registro que esta seleccionado o voy seleccionando en el xBrowse se muestra en los GETS. hasta aca todo bien,
pero cuando oprimo un boton de la buttombar para generar un nuevo registro blanquea los gets correctamente pero no puedo
darle el foco al primer get.
en la función del botn oprimido coloco oNombre:SetFocus() y el focus sigue en el xBrowse.
trate de hacerlo desde otros puntos de la funcion y no obtengo resultados.
Alguna sugerencia?
Gracias
José Camilo

Re: Problema con asignación de focus.

PostPosted: Mon Jun 19, 2023 2:40 am
by JoseAlvarez
Hola jose,

Probaste haciendo un refresh() luego del setfocus() ??

oNombre:SetFocus()
oNombre:Refresh()

Re: Problema con asignación de focus.

PostPosted: Mon Jun 19, 2023 9:12 am
by paquitohm
.
[Aquí iba mi último mensaje en el foro]

Re: Problema con asignación de focus.

PostPosted: Mon Jun 19, 2023 1:02 pm
by karinha
Intenta asi:

Code: Select all  Expand view


   XFOCUS( oObj )


//-------------------------------------------------------------------------//
// As vezes simples SetFocus( oObj ) nao faz um objeto ganhar foco
// neste caso pode apelar para estas duas funcoes a seguir
// Forcar foco para um objeto especifico - Ednaldo Rolim...
//-------------------------------------------------------------------------//
FUNCTION xFocus( oObj )

   xSetFocus( oObj )
   xSetFocus( oObj )

RETURN( .T. )

FUNCTION xSetFocus( oObj )    

   LOCAL _oWnd := oObj:oWnd, _oTempo := ""

   DEFINE TIMER _oTempo INTERVAL 10 OF _oWnd ;
          ACTION ( oObj:SetFocus(), _oTempo:End() )

   ACTIVATE TIMER _oTempo

RETURN( .T. )
 


Regards, saludos

Re: Problema con asignación de focus.

PostPosted: Mon Jun 19, 2023 2:31 pm
by José Camilo
Muchas gracias José y Joao por su tiempo.
José, Ya habia probado con el Refresh() y no me funcionaba. GRACIAS igual !!!!

Joao, tu sugerencia fue LA solucion. PERFECTO !!! GRACIAS!!!

José Camilo