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: 3110
- 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: 20420
- Registrado em: 26 Fev 2007 11:59
- Localização: São Paulo-SP
- Curtiram: 1 vez
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, multithread, gtwvg, fivewin 25.12, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui), (hmg3), (hmg extended), (oohg), PNotepad, ASP, (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, multithread, gtwvg, fivewin 25.12, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui), (hmg3), (hmg extended), (oohg), PNotepad, ASP, (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
