Erro meu, acrescentei o parâmetro na função, mas esqueci de passar o parâmetro Cont.... rs
É o mesmo exemplo da HMG3, apenas troquei a janela por uma da GTWVG, e o GET só como uma forma rápida de ter pausa.
Código: Selecionar todos
#include "inkey.ch"
#include "bostaurus.ch"
#include "i_color.ch"
#define MYWIN_HANDLE __xhb_p2n( wvgSetAppWindow():hWnd )
FUNCTION MAIN
LOCAL nCont := 6, A := " ", GetList := {}
wvt_SetGui( .T. )
SetMode(25,80)
CLS
DO WHILE .T.
@ 1, 1 GET A
READ
IF LastKey() == K_ESC
EXIT
ENDIF
nCont := iif( nCont >= 6, 1, nCont + 1 )
? MYWIN_HANDLE
? ValType( MYWIN_HANDLE )
Inkey(0)
BT_ClientAreaInvalidateAll( MYWIN_HANDLE )
Proc_On_Paint( nCont )
ENDDO
RETURN NIL
PROCEDURE Proc_ON_PAINT( Cont )
LOCAL Width := BT_ClientAreaWidth( MYWIN_HANDLE )
LOCAL Height := BT_ClientAreaHeight( MYWIN_HANDLE )
LOCAL hDC, BTstruct, nAlignText, nTypeText
hDC = BT_CreateDC ( MYWIN_HANDLE, BT_HDC_INVALIDCLIENTAREA, @BTstruct)
DO CASE
CASE cont = 1
BT_DrawGradientFillHorizontal (hDC, 0, 0, Width/2, Height, BLACK, BLUE)
BT_DrawGradientFillHorizontal (hDC, 0, Width/2, Width/2, Height, BLUE, BLACK)
CASE cont = 2
BT_DrawGradientFillVertical (hDC, 0, 0, Width, Height/2, BLACK, RED)
BT_DrawGradientFillVertical (hDC, Height/2, 0, Width, Height/2, RED, BLACK)
CASE cont = 3
BT_DrawGradientFillVertical (hDC, 0, 0, Width, Height/2, RED, GREEN)
BT_DrawGradientFillVertical (hDC, Height/2, 0, Width, Height/2, GREEN, BLUE)
CASE cont = 4
BT_DrawGradientFillHorizontal (hDC, 0, 0, Width/2, Height, GREEN, BLUE)
BT_DrawGradientFillHorizontal (hDC, 0, Width/2, Width/2, Height, BLUE, RED)
CASE cont = 5
BT_DrawGradientFillVertical (hDC, 0, 0, Width, Height, WHITE, BLACK)
CASE cont = 6
BT_DrawGradientFillHorizontal (hDC, 0, 0, Width, Height, {100,0,123}, BLACK)
END CASE
nTypeText := BT_TEXT_TRANSPARENT + BT_TEXT_BOLD + BT_TEXT_ITALIC + BT_TEXT_UNDERLINE
nAlignText := BT_TEXT_CENTER + BT_TEXT_BASELINE
BT_DrawText (hDC, Height/2-3, Width/2+3, "The Power of HMG", "Comic Sans MS", 42, GRAY, BLACK, nTypeText, nAlignText ) // Shadow Effect
BT_DrawText (hDC, Height/2, Width/2, "The Power of HMG", "Comic Sans MS", 42, YELLOW, BLACK, nTypeText, nAlignText )
BT_DeleteDC (BTstruct)
RETURN
O nome da janela é porque é o nome do EXE, não foi proposital.
É que outro fonte que acrescentei foi este, justamente o que chamei de lixo.prg, e na hora que compilei assumiu esse nome.