Alert ou Hb_alert: Usando no Windows 10 64bits

Projeto [x]Harbour - Compilador de código aberto compatível com o Clipper.

Moderador: Moderadores

wmscareca
Usuário Nível 1
Usuário Nível 1
Mensagens: 2
Registrado em: 17 Mar 2019 01:42
Localização: Guarulhos/SP

Alert ou Hb_alert: Usando no Windows 10 64bits

Mensagem por wmscareca »

Usei muito Clipper no colégio técnico há muito tempo.
Estou me divertindo um pouco com o Harbour no Windows 10, porém
não estou conseguindo utilizar nenhuma dessa funções: alert("") ou hb_alert("").
Quando as utilizo, no momento em que elas deveriam aparecer a tela fica preta.
Meu S.O. é Windows 10 64bits
Segue o código do .prg em que estou me divertindo. Se alguém tiver um idéia fico agradecido.
O comando que estou usando para compilar é hbmk2-x64 teste.prg

REQUEST HB_CodePage_PTISO
PROCEDURE Main
Set( _SET_CODEPAGE, "PTISO" )


set date to british
set century on
set score off
clear

name=space(50)
idade=(0)
@ 00,00 to 04,175 double
@ 05,00 to 40,175
@ 01,02 SAY "Desenvolvido em Harbor 3.0"
@ 01,164 SAY DATE()
@ 06,02 SAY "Entre com seu nome: "
@ 06,23 get name
@ 06,75 say "Entre com sua idade: "
@ 06,97 get idade
read

IF idade > 29
alert("Poxa, acho que você está acima da idade...")
else
alert("Você ainda pode participar")
endif

--
William R M Santos
Tecnólogo em Redes de Computadores
Software Livre. Adote essa idéia.
Antes de imprimir, pense em sua responsabilidade com o MEIO AMBIENTE.
Avatar do usuário
Jairo Maia
Moderador
Moderador
Mensagens: 2785
Registrado em: 16 Ago 2010 13:46
Localização: Campinas-SP

Alert ou Hb_alert: Usando no Windows 10 64bits

Mensagem por Jairo Maia »

Olá Willian,

Seja bem vindo ao fórum.

Abaixo dessa linha:

Código: Selecionar todos

Set( _SET_CODEPAGE, "PTISO" )
Coloque essa função:

Código: Selecionar todos

SetMode( 25,85 )
Nota: Lembre-se que ao compilar em 64 bits, seu sistema rodará apenas em 64 bits. Se compilar em 32 bits, o sistema rodará em 32 e 64 bits.

DICA: Na parte dos Gets de seu teste, você pode colocar tudo na mesma linha. Exemplo:

Código: Selecionar todos

@ 06,02 Say "Entre com seu nome:" Get name
@ 07,02 Say "Entre com sua idade:" Get idade
Read
Lembre-se também, que você terá linhas e colunas conforme você configurar com SetMode(). No caso, você está colocando idade na coluna 97, e ficará fora da tela.
Abraços, Jairo
Harbour / Clipper 5.2e - Blinker 7
(Não respondo dúvidas por MP ou E-mail. Por favor, não encaminhe via mensagem privada ou e-mail, dúvidas que podem ser compartilhadas com todos no fórum)
wmscareca
Usuário Nível 1
Usuário Nível 1
Mensagens: 2
Registrado em: 17 Mar 2019 01:42
Localização: Guarulhos/SP

Alert ou Hb_alert: Usando no Windows 10 64bits

Mensagem por wmscareca »

Primeiramente, muito obrigado por responder.
Na verdade eu defini a coluna dessa forma, para caber em uma tela de prompt dentro de um S.O. win 10 64 bits.
Você conhece algum comando ou função que poderia melhor adaptar essa tela de programa, conforme o usuário escolhesse
a resolução do monitor?

ps.: Desculpe pela amolação, mas na época que eu aprendi clipper não tínhamos resoluções de vídeo tão grandes.

--
William R M Santos
Tecnólogo em Redes de Computadores
Software Livre. Adote essa idéia.
Antes de imprimir, pense em sua responsabilidade com o MEIO AMBIENTE.
Avatar do usuário
Jairo Maia
Moderador
Moderador
Mensagens: 2785
Registrado em: 16 Ago 2010 13:46
Localização: Campinas-SP

Alert ou Hb_alert: Usando no Windows 10 64bits

Mensagem por Jairo Maia »

wmscareca escreveu:Você conhece algum comando ou função que poderia melhor adaptar essa tela de programa, conforme o usuário escolhesse
a resolução do monitor?
Como você está em fase de aprendizado, vou sugerir a lib GtWVT. O problema é que essa lib não dá suporte para exibição de imagens, e as demais tem que ficar ajustando a tela após capturar a resolução e ajustar a fonte usada. A princípio, veja seu exemplo adaptado para usar a lib GtWVT com tela em WildScreen:

Código: Selecionar todos

#include "inkey.ch"
#include "hbgtinfo.ch"

REQUEST HB_LANG_PT
REQUEST HB_GT_WVT_DEFAULT

REQUEST HB_CodePage_PTISO

PROCEDURE Main
 Local name, idade

 Set( _SET_CODEPAGE, "PTISO" )

 Set Date To British 
 Set Century On 
 Set Score Off
 
 //SetMode( 25, 80 )  // nÆo precisa...
 
 HB_GtInfo( HB_GTI_MAXIMIZED, .T. ) // ajusta a tela em modo widescreen...

 SetColor( "W+/B+" )  // fundo azul letras brancas...
 Clear Screen

 name=space(50)
 idade=(0)
 
 @ 00,00 To 04,MaxCol() double
 @ 05,00 To MaxRow(),MaxCol()
 
 @ 02,02 SAY PadC( "Desenvolvido em Harbor 3.0 - " + DToC( Date() ), MaxCol() - 2 )

 @ 08,02 SAY "Entre com seu nome:" Get name
 @ 10,02 say "Entre com sua idade:" Get idade

 Read

 If LastKey() != K_ESC

  IF idade > 29 
   Hb_Alert( "Poxa, acho que você está acima da idade..." )
  Else
   Hb_Alert( "Você ainda pode participar" )
  EndIf

 EndIf

Return Nil
Bons estudos...
Abraços, Jairo
Harbour / Clipper 5.2e - Blinker 7
(Não respondo dúvidas por MP ou E-mail. Por favor, não encaminhe via mensagem privada ou e-mail, dúvidas que podem ser compartilhadas com todos no fórum)
Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

Alert ou Hb_alert: Usando no Windows 10 64bits

Mensagem por JoséQuintas »

wmscareca escreveu:Quando as utilizo, no momento em que elas deveriam aparecer a tela fica preta.
Demorei um pouquinho pra entender o problema.....

O Windows costuma definir a tela padrão para o prompt como 1.000 linhas.
O que está vendo não é uma tela preta, é uma parte das 1.000 linhas.
Defina um tamanho padrão, por exemplo, SetMode(25,80) ou SetMode(40,100) ou o que quiser.

Código: Selecionar todos

SetMode( 25, 80 )
CLS
....
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/
Responder