Página 1 de 1

Teste simples pra poucos

Enviado: 26 Jan 2024 19:03
por JoséQuintas
test1.png
test2.png

Código: Selecionar todos

PROCEDURE Main

   hwg_MsgInfo( "ok" )
   Msgbox( "OK" )

   RETURN
O que tem de mais nisso?
Nada.

Exceto que uma função é HWGUI e outra é HMG Extended.

Aqui compilo assim:

hbmk2 test hwgui.hbc hmge.hbc

É só mais um dos testes fora do normal que faço por aqui.

Teste simples pra poucos

Enviado: 26 Jan 2024 19:13
por JoséQuintas
test.png
Pequena complicação(*): mesma coisa em multithread, com ajuda da gtwvg

Código: Selecionar todos


PROCEDURE Main

   hb_ThreadStart( { || t1() } )
   hb_ThreadStart( { || t2() } )
   hb_ThreadWaitForAll()

   RETURN

PROCEDURE T1

   hb_gtReload( "WVG" )
   hwg_MsgInfo( "ok" )

   RETURN

PROCEDURE T2
   hb_gtReload( "WVG" )
   MsgBox( "OK" )

   RETURN
Aproveitando:

Multithread é isso.
As duas execuções estão esperando clicar no ok, mas uma não parou a outra, as duas são independentes.
E cadê GTWVG ? Tá invisível, porque não tem saída pra tela.
Só serviu pras funções terem o que parar enquanto aguardam o click.

Toda aquela mistura de LIBs, que já mencionei por aqui, se baseiam nisso.
Simplesmente trocar GTGUI por GTWVG, pra permitir multithread, e uma lib não interferir na outra.

Teste simples pra poucos

Enviado: 26 Jan 2024 19:37
por alxsts
Olá!

Por que será que hwg_MsgInfo( "ok" ) mostra um ícone e MsgBox("OK") não mostra?

Teste simples pra poucos

Enviado: 26 Jan 2024 19:39
por alxsts
Olá!

Estranho: o tópico acima foi postado às 20:07 mas consta como postado à 19:37. O que será esta diferença?

Teste simples pra poucos

Enviado: 28 Jan 2024 10:08
por JoséQuintas
alxsts escreveu:Por que será que hwg_MsgInfo( "ok" ) mostra um ícone e MsgBox("OK") não mostra?
Depende de como foi implementada cada uma.
Aqui tenho várias pré-definidas.
Apenas pra mostrar, nenhuma destas entrou no teste.

Código: Selecionar todos

FUNCTION MsgYesNo( cText )

   LOCAL lValue

   lValue := wapi_MessageBox( wapi_GetActiveWindow(), cText, AppEmpresaApelido() + " Confirmação", WIN_MB_YESNO + WIN_MB_ICONQUESTION + WIN_MB_DEFBUTTON2 + WIN_MB_TOPMOST ) == WIN_IDYES

   RETURN lValue

FUNCTION MsgExclamation( cText )

   wapi_MessageBox( wapi_GetActiveWindow(), cText, AppEmpresaApelido() + " Atenção", WIN_MB_ICONASTERISK + WIN_MB_TOPMOST )

   RETURN Nil

FUNCTION MsgWarning( cText )

   wapi_MessageBox( wapi_GetActiveWindow(), cText, AppEmpresaApelido() + " Atenção", WIN_MB_ICONEXCLAMATION + WIN_MB_TOPMOST )

   RETURN Nil

FUNCTION MsgStop( cText )

   wapi_MessageBox( wapi_GetActiveWindow(), cText, AppEmpresaApelido() + " Atenção", WIN_MB_ICONHAND + WIN_MB_TOPMOST )

   RETURN Nil
Todas chamam a wapi_MessageBox(), definindo ícone e/ou comportamento.
Se chamar direto MessageBox(), se não indicar ícone, não tem ícone nenhum.
Provavelmente MsgBox() é a chamada equivalente de wapi_MessageBox()
alxsts escreveu:Estranho: o tópico acima foi postado às 20:07 mas consta como postado à 19:37. O que será esta diferença?
Provavelmente fuso horário.
Acho que cada um vê no seu próprio fuso horário.
fusohorario.png

Teste simples pra poucos

Enviado: 28 Jan 2024 16:07
por alxsts
Olá!
JoséQuintas escreveu:Provavelmente fuso horário.
Acredito que o problema seja outro. Minhas configurações estão iguais às do print acima. E se fosse, a diferença não seria de 30 minutos. Estou postando isto às 16:36.