bem, tenho um código de uma tela CONSOLE com alguns gráficos que ao retornar para a tela do menu principal, tanto o RETSCREEN quanto o wvg_DelPaint() não estão recuperando corretamente os gráficos da tela anterior. Quando se entra no módulo, no meu exemplo: CONDIÇÕES DE PAGAMENTO, gero a tela com o WVGCRT na configuração modal.
Após retorno os gráficos da tela anterior (menu principal - tela padrão) somente todos.
Vejam as imagens:
1) tela principal antes de acionar o módulo CONDIÇÕES DE PAGAMENTO (substituà o @ BOX) pelo: Wvt_DrawBoxRaised(). vejam os desenhos na tela CONSOLE se misturando e encaixando perfeitamente com os gráficos da WVG:
2) janela modal do módulo CONDIÇÕES DE PAGAMENTO, incluindo botões da WVG (WvgPushButton):
3) após o retorno ao menu principal, tudo está sendo limpo de forma incoerente:
Bom, a parte do meu código que retorna ao MENU PRINCIPAL é:
if oCrt_TELA_PADRAO <> nil
oCrt_TELA_PADRAO:Destroy() // aqui uso para destruir a tela criada pelo WVGCRT.
endif
wvg_DelPaint() // esta é a linha q apaga toda o gráfico q existir da WVG. parece ser semelhante à debaixo
// Wvg_ClearGUIObjects () // esta é uma linha alternativa q apaga toda o gráfico q existir da WVG, havia incluÃdo-a para substituir a linha cima
close all
set (_SET_CURSOR,SALVA_CURSOR)
set (_SET_DELIMITERS,SALVA_DELIMITERS)
set (_SET_INTENSITY,SALVA_INTENSITY)
setcolor (SALVA_COR)
restscreen (0,0,maxrow (),maxcol (),SALVA_TELA) // se eu tirar esta linha não faz diferença alguma
return nil
Se eu usar o wvg_DelPaint() ou Wvg_ClearGUIObjects () o efeito é o mesmo. Se eu não usar nenhum dos 2 o efeito é o mesmo.
Alguns dos nobres professores tem uma dica para que funcione corretamente?
ps: compilo meu programa com o uso da IDE HMG 3.4.4, com as seguintes caracterÃsticas:
1) #require "gtwvg"
2) ANNOUNCE HB_GT_SYS
REQUEST HB_GT_WVG_DEFAULT
REQUEST HB_GT_WIN
REQUEST HB_GT_WVT
REQUEST HB_GT_WVG
3) uso apenas WVGCRT, PUSHBUTTON e Wvt_DrawBoxRaised dependendo do caso, apenas um ou todos juntos