Page 1 of 1

como saber si un dialogo está abierto o no...

Posted: Wed Dec 19, 2007 5:34 pm
by Elias Torres
Hola a todos...

Necesitaria saber si existe alguna función que me permita saber si un dialogo se encuentra abierto o no, es decir, si ya se ha hecho un odlg:end() o por el contrario aún está activo....


Saludos y gracias.

Elías Torres.

Posted: Sun Dec 30, 2007 12:42 am
by luis.santeliz
Creo q puedes usar:

Code: Select all

IsWindowVisible(oDlg:hWnd) -> .t. | .f.
pasando como parametro la propiedad hWnd del objeto TDIALOG q la hereda de TWINDOW

un tip... puedes usar la funcion SetKey(tecla, bAction ) para monitorear el estatus de la ventana

ej.

Code: Select all

#include "vkey.ch"

SetKey(VK_F2, {|| IIF(oDlg<>NIL, MsgAlert(IsWindowVisible(oDlg:hWnd )),NIL) })
cuando presiones F2 mostrara una ventana con el estado de oDlg.
para ver el resto de las teclas echale un vistazo a vkey.ch