FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin para Harbour/xHarbour Detectar cuando una aplicaci贸n pierde el foco
Posts: 408
Joined: Sun Aug 13, 2006 05:38 AM
Detectar cuando una aplicaci贸n pierde el foco
Posted: Mon Mar 18, 2013 02:53 PM
驴Es posible detectar cuando la aplicaci贸n pierde el foco?

O sea, la idea es detectar cuando ning煤n control tiene el foco, por ejemplo, aqui la ventana pierde el foco al presionar cualquiera de los dos botones, la idea es que no detecte que pierde el foco en esos momentos, porque realmente la aplicaci贸n sigue teniendo el foco, o por lo menos, el menor n煤mero de veces.

Code (fw): Select all Collapse
#include "FiveWin.ch"
function main
聽 聽local oWnd, oMenu
聽 聽menu oMenu
聽 聽 聽 menuitem "ventana" action hija( oWnd )
聽 聽endMenu
聽 聽define window oWnd mdi menu oMenu
聽 聽activate window oWnd
return nil

function hija( oWnd )
聽 聽local oMdi
聽 聽define window oMdi mdichild of oWnd
聽 聽@ 5, 5 button "di谩logo" 聽action dialogo()
聽 聽@10,10 button "archivos" action cGetFile32()
聽 聽oMdi:bGotFocus := { || oWnd:bLostFocus := { || oWnd:bLostFocus := nil, msgInfo( 1 ) } }
聽 聽eval( oMdi:bGotFocus )
聽 聽activate window oMdi
return nil

function dialogo
聽 聽local oDlg
聽 聽define dialog oDlg
聽 聽activate dialog oDlg
return nil
Saludos

Quique
Posts: 44158
Joined: Thu Oct 06, 2005 05:47 PM
Re: Detectar cuando una aplicaci贸n pierde el foco
Posted: Mon Mar 18, 2013 10:31 PM

Quique,

Esta forma te sirve mientras una ventana MdiChold est茅 abierta:

oWnd:bLostFocus = { | o, hWnd | If( GetFocus() != oWnd:oWndClient:hWnd, MsgBeep(),) }

regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 408
Joined: Sun Aug 13, 2006 05:38 AM
Re: Detectar cuando una aplicaci贸n pierde el foco
Posted: Tue Mar 19, 2013 01:38 AM

Gracias Antonio, pero tiene el mismo efecto que lo que hice, al dar click en los botones se detecta perdida de foco.

Saludos

Quique

Continue the discussion