Página 1 de 1
Alert ou Hb_alert: Usando no Windows 10 64bits
Enviado: 17 Mar 2019 02:56
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
Alert ou Hb_alert: Usando no Windows 10 64bits
Enviado: 17 Mar 2019 09:07
por Jairo Maia
Olá Willian,
Seja bem vindo ao fórum.
Abaixo dessa linha:
Coloque essa função:
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.
Alert ou Hb_alert: Usando no Windows 10 64bits
Enviado: 17 Mar 2019 10:55
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.
Alert ou Hb_alert: Usando no Windows 10 64bits
Enviado: 17 Mar 2019 11:41
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...
Alert ou Hb_alert: Usando no Windows 10 64bits
Enviado: 17 Mar 2019 14:36
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.