Alguém saberia como substituir a saida de um loop (DO / ENDDO) no xHarbour?
Uso no Clipper o famoso
DO WHILE .T.
IF INKEY() = 27
EXIT
ENDIF
ENDDO
Desde já obrigado.
sair de loop com ESC
Moderador: Moderadores
-
LUCAS MACHADO
- Usuário Nível 1

- Mensagens: 25
- Registrado em: 31 Mai 2013 11:43
- Localização: RIO DE JANEIRO/RJ
-
alxsts
- Colaborador

- Mensagens: 3092
- Registrado em: 12 Ago 2008 15:50
- Localização: São Paulo-SP-Brasil
sair de loop com ESC
Olá!
Este código mostrado por você funciona perfeitamente em xHarbour.
Se quiser melhorar, pode usar assim:
Este código mostrado por você funciona perfeitamente em xHarbour.
Se quiser melhorar, pode usar assim:
Código: Selecionar todos
#include "inkey.ch"
Proc Main()
cls
DO WHILE INKEY() != K_ESC
? Time()
ENDDO[]´s
Alexandre Santos (AlxSts)
Alexandre Santos (AlxSts)
sair de loop com ESC
Código: Selecionar todos
DO WHILE .T.
inkey(0.01)
IF INKEY() = 27
EXIT
ENDIF
ENDDOClipper 5.2e / Blinker 5.1 / Harbour 3.2 / GTwvg
- JoséQuintas
- Administrador

- Mensagens: 20267
- Registrado em: 26 Fev 2007 11:59
- Localização: São Paulo-SP
sair de loop com ESC
Usar somente Inkey() pode falhar se houver mais de um loop.
Aqui uso igual no Clipper.
Obs. estranhei a rotina anterior.
Aqui uso igual no Clipper.
Código: Selecionar todos
nKey := 0
DO WHILE nKey != K_ESC .AND. .NOT. Eof()
nKey := Inkey()
DO WHILE nKey != K_ESC .AND. .NOT. Eof()
nKey := Inkey()
SKIP
ENDDO
ENDDO
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"
https://github.com/JoseQuintas/
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"
https://github.com/JoseQuintas/
sair de loop com ESC
José, se for a minha rotina realmente postei errado. O correto é com uso de LASTKEY() e não INKEY()JoséQuintas escreveu:Obs. estranhei a rotina anterior.
Código: Selecionar todos
DO WHILE .T.
inkey(0.01)
IF LASTKEY() = 27
EXIT
ENDIF
ENDDO
Uso sem armazenagem em variável e funciona normal.
Ate+
Clipper 5.2e / Blinker 5.1 / Harbour 3.2 / GTwvg
