FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin para Harbour/xHarbour Salir WHILE...END al presionar tacla
Posts: 418
Joined: Wed Nov 26, 2008 06:33 PM
Salir WHILE...END al presionar tacla
Posted: Sun Feb 20, 2011 08:01 PM

Saludos.

Hola a todos, he tratado de sustituir al tan usados en su momento INKEY(), sin sesultados, tengo un proceso...

WHILE eval(bCondicion)
...
...
...
END

Deseo en el ciclo incluir una funcion que al presional la tecla ESC u otra me salga del mismo, algo parecido a

while eval(bCondicion)
nKey:=Inkey()
if nKey==VK_ESCAPE
exit
endif
....
end

Gracias..

Fwh 8.11, xH 1.1, bcc 5.5

Noé Aburto Sánchez
Tec. Prog. de Sistemas. -Morelia, Mich. México.
fwh 20.06, Harbour 3.2.0, bcc 7.4
TsBrowse 9.0, TsButton 7.0, xEdit 6.1
naburtos@gmail.com, noeaburto67@hotmail.com
Posts: 8515
Joined: Tue Dec 20, 2005 07:36 PM
Re: Salir WHILE...END al presionar tacla
Posted: Mon Feb 21, 2011 11:46 AM
Code (fw): Select all Collapse
      WHILE .NOT. EOF()

         INKEY( 0.1 )

         //-> Interromper o cancelamento
         IF LASTKEY() = VK_ESCAPE

            IF MsgNoYes( OemToAnsi( "Aten‡Æo Usu rio:         " ) +CRLF+ ;
                                                                  +CRLF+ ;
                         OemToAnsi( "Vocˆ Teclou <ESCAPE>     " ) +CRLF+ ;
                         OemToAnsi( "Est  tendo problemas     " ) +CRLF+ ;
                         OemToAnsi( "na ConexÆo da Internet?  " ) +CRLF+ ;
                                                                  +CRLF+ ;
                         OemToAnsi( "Deseja sair realmente?   " ) +CRLF+ ;
                         OemToAnsi( "Anote o N§. do pedido.   " ) +CRLF+ ;
                                                                  +CRLF+ ;
                         OemToAnsi( "<S>im Continuar...       " ) +CRLF+ ;
                         OemToAnsi( "<N>Æo Continuar(Sair)    " ),       ;
                         OemToAnsi( "Problemas na ConexÆo?    " ) ) = .F.

               TONE(900,2)

               RETURN( .F. )

            ENDIF

         ENDIF

         SYSREFRESH()

      ENDDO


João Santos - São Paulo - Brasil - Phone: +55(11)95150-7341
Posts: 418
Joined: Wed Nov 26, 2008 06:33 PM
Re: Salir WHILE...END al presionar tacla
Posted: Mon Feb 21, 2011 07:08 PM

Gracias por tu respuesta.

El caso es que por qlguna razón, el INKEY() ocasiona un ploblema con el administrador de tareas de windows, he observado que al finalizar la operacion de la aplicacion, aun queda en el administrador, y no se la razon. solo al usar INKEY().

De hacho si me funciona para supender o salir del ciclo, pero el detalle que indico es el problema.

Noé Aburto Sánchez
Tec. Prog. de Sistemas. -Morelia, Mich. México.
fwh 20.06, Harbour 3.2.0, bcc 7.4
TsBrowse 9.0, TsButton 7.0, xEdit 6.1
naburtos@gmail.com, noeaburto67@hotmail.com
Posts: 883
Joined: Thu Dec 24, 2009 12:46 AM
Re: Salir WHILE...END al presionar tacla
Posted: Mon Feb 21, 2011 08:11 PM
En teoria deberias poder capturar las teclas presionadas de cualquier objeto.

Intenta:
Code (fw): Select all Collapse
oWin:bKeyDown := { | nKey | iif( ( nkey == VK_ESCAPE ), Funcion(), nil ) }

=====>

Bayron Landaverry
xBasePHP.com
(215)2226600 Philadelphia,PA, USA
MayaBuilders@gMail.com
Guatemala

FWH25.06--Harbour 3.0.0--BCC7.7--UEstudio 10.10
Windows 10

FiveWin, One line of code and it's done...

Posts: 845
Joined: Sun Oct 09, 2005 05:36 PM
Re: Salir WHILE...END al presionar tacla
Posted: Thu Mar 03, 2011 01:27 AM

prueba con esto GETKEYSTATE(VK_ESCAPE)
saludos
Paco

____________________

Paco

Continue the discussion