In order for this site to work correctly we need to store a small file (called a cookie) on your computer. Most every site in the world does this, however since the 25th of May 2011, by law we have to get your permission first. Please abandon the forum if you disagree.
Para que este foro funcione correctamente es necesario guardar un pequeño fichero (llamado cookie) en su ordenador. La mayoría de los sitios de Internet lo hacen, no obstante desde el 25 de Marzo de 2011 y por ley, necesitamos de su permiso con antelación. Abandone este foro si no está conforme.
Para que este foro funcione correctamente es necesario guardar un pequeño fichero (llamado cookie) en su ordenador. La mayoría de los sitios de Internet lo hacen, no obstante desde el 25 de Marzo de 2011 y por ley, necesitamos de su permiso con antelación. Abandone este foro si no está conforme.
Cómo recuperar el foco después de execute ()
Cómo recuperar el foco después de execute ()
Por favor:
Cuando uso Execute ( "C: TEF TEF.EXE"), la TEF.EXE se minimiza
en la bandeja del sistema, pero mi aplicación pierde el foco.
¿Cómo devolver el foco a mi aplicación después de Execute()?
Esto no funciona:
Execute ( "C: TEF TEF.EXE")
::oForm:SetFocus()
o:
LOCAL cState:=::oForm:SaveState()
Execute ( "C: TEF TEF.EXE")
::oForm:RestoreState(cState)
o:
Execute ( "C: TEF TEF.EXE")
SetActiveWindow( ::Handle )
Gracias por su ayuda.
Saludos!
Mário Angelini
www.eMeAsOfT.com
http://emeasoft.blogspot.com/
http://twitter.com/emeasoft
Cuando uso Execute ( "C: TEF TEF.EXE"), la TEF.EXE se minimiza
en la bandeja del sistema, pero mi aplicación pierde el foco.
¿Cómo devolver el foco a mi aplicación después de Execute()?
Esto no funciona:
Execute ( "C: TEF TEF.EXE")
::oForm:SetFocus()
o:
LOCAL cState:=::oForm:SaveState()
Execute ( "C: TEF TEF.EXE")
::oForm:RestoreState(cState)
o:
Execute ( "C: TEF TEF.EXE")
SetActiveWindow( ::Handle )
Gracias por su ayuda.
Saludos!
Mário Angelini
www.eMeAsOfT.com
http://emeasoft.blogspot.com/
http://twitter.com/emeasoft
Cómo recuperar el foco después de execute ()
Mario,
Seguramente sea un problema de 'timing'. Intente realizar un post message
del tipo WM_SETFOCUS sobre el form principal. Si ello no funciona deberá
utilizar posiblemente un timer que lo único que haga sea reestablecer el
foco y luego destruirse.
Un saludo
--
Ignacio Ortiz de Zúñiga
Xailer team
http://www.xailer.com
http://www.xailer.info
"Mário Angelini" <mario@emeasoft.com.br> escribió en el mensaje
news:4bb353ae$[email=1@svctag-j7w3v3j....]1@svctag-j7w3v3j....[/email]
> Por favor:
>
> Cuando uso Execute ( "C: TEF TEF.EXE"), la TEF.EXE se minimiza
> en la bandeja del sistema, pero mi aplicación pierde el foco.
> ¿Cómo devolver el foco a mi aplicación después de Execute()?
>
> Esto no funciona:
>
> Execute ( "C: TEF TEF.EXE")
> ::oForm:SetFocus()
>
> o:
>
> LOCAL cState:=::oForm:SaveState()
> Execute ( "C: TEF TEF.EXE")
> ::oForm:RestoreState(cState)
>
>
> o:
> Execute ( "C: TEF TEF.EXE")
> SetActiveWindow( ::Handle )
>
> Gracias por su ayuda.
>
> Saludos!
> Mário Angelini
> www.eMeAsOfT.com
> http://emeasoft.blogspot.com/
> http://twitter.com/emeasoft
>
>
Seguramente sea un problema de 'timing'. Intente realizar un post message
del tipo WM_SETFOCUS sobre el form principal. Si ello no funciona deberá
utilizar posiblemente un timer que lo único que haga sea reestablecer el
foco y luego destruirse.
Un saludo
--
Ignacio Ortiz de Zúñiga
Xailer team
http://www.xailer.com
http://www.xailer.info
"Mário Angelini" <mario@emeasoft.com.br> escribió en el mensaje
news:4bb353ae$[email=1@svctag-j7w3v3j....]1@svctag-j7w3v3j....[/email]
> Por favor:
>
> Cuando uso Execute ( "C: TEF TEF.EXE"), la TEF.EXE se minimiza
> en la bandeja del sistema, pero mi aplicación pierde el foco.
> ¿Cómo devolver el foco a mi aplicación después de Execute()?
>
> Esto no funciona:
>
> Execute ( "C: TEF TEF.EXE")
> ::oForm:SetFocus()
>
> o:
>
> LOCAL cState:=::oForm:SaveState()
> Execute ( "C: TEF TEF.EXE")
> ::oForm:RestoreState(cState)
>
>
> o:
> Execute ( "C: TEF TEF.EXE")
> SetActiveWindow( ::Handle )
>
> Gracias por su ayuda.
>
> Saludos!
> Mário Angelini
> www.eMeAsOfT.com
> http://emeasoft.blogspot.com/
> http://twitter.com/emeasoft
>
>
Cómo recuperar el foco después de execute ()
Ignacio:
Yo no entendí como hacer esto.
¿Podria explicarme mejor?
Hice la prueba:
MsgInfo(1)
Execute ( "C: TEF TEF.EXE")
MsgInfo(2) <-pierde el foco
Mário
Yo no entendí como hacer esto.
¿Podria explicarme mejor?
Hice la prueba:
MsgInfo(1)
Execute ( "C: TEF TEF.EXE")
MsgInfo(2) <-pierde el foco
Mário
Cómo recuperar el foco después de execute ()
Mario,
oMyForm:PostMsg( WM_SETFOCUS )
O
WITH OBJECT TTimer():New( oMyForm )
:nInterval := 1000
:OnTimer := {|oSender| oMyForm:SetFocus(), oSender:End() }
:lEnabled := .T.
:Create()
:Enabled()
END WITH
Regards,
--
Ignacio Ortiz de Zúñiga
Xailer team
http://www.xailer.com
http://www.xailer.info
"Mário Angelini" <mario@emeasoft.com.br> escribió en el mensaje
news:4bb4a34f$[email=1@svctag-j7w3v3j....]1@svctag-j7w3v3j....[/email]
> Ignacio:
> Yo no entendí como hacer esto.
> ¿Podria explicarme mejor?
>
> Hice la prueba:
>
> MsgInfo(1)
> Execute ( "C: TEF TEF.EXE")
> MsgInfo(2) <-pierde el foco
>
> Mário
oMyForm:PostMsg( WM_SETFOCUS )
O
WITH OBJECT TTimer():New( oMyForm )
:nInterval := 1000
:OnTimer := {|oSender| oMyForm:SetFocus(), oSender:End() }
:lEnabled := .T.
:Create()
:Enabled()
END WITH
Regards,
--
Ignacio Ortiz de Zúñiga
Xailer team
http://www.xailer.com
http://www.xailer.info
"Mário Angelini" <mario@emeasoft.com.br> escribió en el mensaje
news:4bb4a34f$[email=1@svctag-j7w3v3j....]1@svctag-j7w3v3j....[/email]
> Ignacio:
> Yo no entendí como hacer esto.
> ¿Podria explicarme mejor?
>
> Hice la prueba:
>
> MsgInfo(1)
> Execute ( "C: TEF TEF.EXE")
> MsgInfo(2) <-pierde el foco
>
> Mário
Cómo recuperar el foco después de execute ()
Sobra el último Enabled()
Saludos
--
Ignacio Ortiz de Zúñiga
Xailer team
http://www.xailer.com
http://www.xailer.info
"Ignacio Ortiz de Zúñiga" <NoAccount@xailer.com> escribió en el mensaje
news:[email=4bb4baac@svctag-j7w3v3j....]4bb4baac@svctag-j7w3v3j....[/email]
> Mario,
>
> oMyForm:PostMsg( WM_SETFOCUS )
>
> O
>
> WITH OBJECT TTimer():New( oMyForm )
> :nInterval := 1000
> :OnTimer := {|oSender| oMyForm:SetFocus(), oSender:End() }
> :lEnabled := .T.
> :Create()
> :Enabled()
> END WITH
>
> Regards,
>
> --
> Ignacio Ortiz de Zúñiga
> Xailer team
> http://www.xailer.com
> http://www.xailer.info
>
> "Mário Angelini" <mario@emeasoft.com.br> escribió en el mensaje
> news:4bb4a34f$[email=1@svctag-j7w3v3j....]1@svctag-j7w3v3j....[/email]
>> Ignacio:
>> Yo no entendí como hacer esto.
>> ¿Podria explicarme mejor?
>>
>> Hice la prueba:
>>
>> MsgInfo(1)
>> Execute ( "C: TEF TEF.EXE")
>> MsgInfo(2) <-pierde el foco
>>
>> Mário
>
>
Saludos
--
Ignacio Ortiz de Zúñiga
Xailer team
http://www.xailer.com
http://www.xailer.info
"Ignacio Ortiz de Zúñiga" <NoAccount@xailer.com> escribió en el mensaje
news:[email=4bb4baac@svctag-j7w3v3j....]4bb4baac@svctag-j7w3v3j....[/email]
> Mario,
>
> oMyForm:PostMsg( WM_SETFOCUS )
>
> O
>
> WITH OBJECT TTimer():New( oMyForm )
> :nInterval := 1000
> :OnTimer := {|oSender| oMyForm:SetFocus(), oSender:End() }
> :lEnabled := .T.
> :Create()
> :Enabled()
> END WITH
>
> Regards,
>
> --
> Ignacio Ortiz de Zúñiga
> Xailer team
> http://www.xailer.com
> http://www.xailer.info
>
> "Mário Angelini" <mario@emeasoft.com.br> escribió en el mensaje
> news:4bb4a34f$[email=1@svctag-j7w3v3j....]1@svctag-j7w3v3j....[/email]
>> Ignacio:
>> Yo no entendí como hacer esto.
>> ¿Podria explicarme mejor?
>>
>> Hice la prueba:
>>
>> MsgInfo(1)
>> Execute ( "C: TEF TEF.EXE")
>> MsgInfo(2) <-pierde el foco
>>
>> Mário
>
>
Cómo recuperar el foco después de execute ()
Ignacio:
Nada de lo que usted sugirió trabajado.
He encontrado la siguiente solución:
Application:lBusy:=.T.
Execute ( "C: TEF TEF.EXE")
Application:lBusy:=.F.
::oForm:SetFocus()
Descubrí después de numerosos intentos de otros por casualidad.
No puedo explicar por qué funciona así.
Mário
Nada de lo que usted sugirió trabajado.
He encontrado la siguiente solución:
Application:lBusy:=.T.
Execute ( "C: TEF TEF.EXE")
Application:lBusy:=.F.
::oForm:SetFocus()
Descubrí después de numerosos intentos de otros por casualidad.
No puedo explicar por qué funciona así.
Mário
- ignacio
- Site Admin
- Mensajes: 9441
- Registrado: Lun Abr 06, 2015 8:00 pm
- Ubicación: Madrid, Spain
- Contactar:
Cómo recuperar el foco después de execute ()
Mario,
el Timer debería haber funcionado en cualquier caso. Pero bueno, si ya lo
tiene andando, me alegro.
Un saludo
--
Ignacio Ortiz de Zúñiga
[Equipo de Xailer/Xailer team]
http://www.xailer.com
http://www.xailer.info
"Mário Angelini" <mario@emeasoft.com.br> escribió en el mensaje de
noticias:4bbdf2c1$[email=1@svctag-j7w3v3j....]1@svctag-j7w3v3j....[/email]
> Ignacio:
> Nada de lo que usted sugirió trabajado.
> He encontrado la siguiente solución:
>
> Application:lBusy:=.T.
> Execute ( "C: TEF TEF.EXE")
> Application:lBusy:=.F.
> ::oForm:SetFocus()
>
>
> Descubrí después de numerosos intentos de otros por casualidad.
> No puedo explicar por qué funciona así.
>
>
> Mário
el Timer debería haber funcionado en cualquier caso. Pero bueno, si ya lo
tiene andando, me alegro.
Un saludo
--
Ignacio Ortiz de Zúñiga
[Equipo de Xailer/Xailer team]
http://www.xailer.com
http://www.xailer.info
"Mário Angelini" <mario@emeasoft.com.br> escribió en el mensaje de
noticias:4bbdf2c1$[email=1@svctag-j7w3v3j....]1@svctag-j7w3v3j....[/email]
> Ignacio:
> Nada de lo que usted sugirió trabajado.
> He encontrado la siguiente solución:
>
> Application:lBusy:=.T.
> Execute ( "C: TEF TEF.EXE")
> Application:lBusy:=.F.
> ::oForm:SetFocus()
>
>
> Descubrí después de numerosos intentos de otros por casualidad.
> No puedo explicar por qué funciona así.
>
>
> Mário
Ignacio Ortiz de Zúñiga
[OZ Software]
https://www.ozs.es
--
[Equipo de Xailer / Xailer team]
https://www.xailer.com
[OZ Software]
https://www.ozs.es
--
[Equipo de Xailer / Xailer team]
https://www.xailer.com
Cómo recuperar el foco después de execute ()
Boa tarde
A título de colaboração, descobrimos, depois de muitas pesquisas e tentativas,
como fazer para recuperar o foco
da aplicação, no caso de usar chamadas para aplicaçíµes externas, muito
usado no Brasil, para aplicaçíµes com TEF discado (pagamento de cartão de
crédito/débito ou consulta de cheque pela internet).
Se o foco não voltar para a aplicação -- faz parte do roteiro pelas bandeiras (Redecard, Visanet, Amex....) -- não é possível homologar o aplicativo.
LOCAL nHandle:=GetForegroundWindow() // http://http://bit.ly/1fnbZJ
... ROTINAS EXTERNAS
SetForegroundWindow(nHandle) // http://bit.ly/1fnbZJ
ou apenas
... ROTINAS EXTERNAS
SetForegroundWindow(::Handle) // http://bit.ly/1fnbZJ
A título de colaboração, descobrimos, depois de muitas pesquisas e tentativas,
como fazer para recuperar o foco
da aplicação, no caso de usar chamadas para aplicaçíµes externas, muito
usado no Brasil, para aplicaçíµes com TEF discado (pagamento de cartão de
crédito/débito ou consulta de cheque pela internet).
Se o foco não voltar para a aplicação -- faz parte do roteiro pelas bandeiras (Redecard, Visanet, Amex....) -- não é possível homologar o aplicativo.
LOCAL nHandle:=GetForegroundWindow() // http://http://bit.ly/1fnbZJ
... ROTINAS EXTERNAS
SetForegroundWindow(nHandle) // http://bit.ly/1fnbZJ
ou apenas
... ROTINAS EXTERNAS
SetForegroundWindow(::Handle) // http://bit.ly/1fnbZJ