by AOKISANTOS » Tue Sep 25, 2007 8:18 pm
Rossine meu amigo, aconteceu comigo o problema de estar em uma dialog, e do nada borrar a window do fundo, fiz isso e aparentemente resolveu:
METHOD Paint() CLASS TSSay
local n
local nColorShadow, nColorLight
if !IsWindowEnabled( ::hWnd ) && By Rossine
return nil
endif
::GetDC()
if ::lActive
for n := 1 to len( ::aCaption )
WSay( ::hWnd, ::hDC, ::nSTop + ( n - 1 ) * ::nTxtHeight, ::nSLeft, ::aCaption[ n ],;
If( ::lOver, ::nClrOver, ::nClrText ),,;
If( ::oFont != nil, ::oFont:hFont, 0 ), .T., .T., ::nAlign )
next
if ::lDrawBox
::DrawBox( ::lOver )
endif
else
nColorShadow := GetSysColor( COLOR_BTNSHADOW )
nColorLight := GetSysColor( COLOR_BTNHIGHLIGHT )
for n := 1 to len( ::aCaption )
WSay( ::hWnd, ::hDC, ::nSTop + ( n - 1 ) * ::nTxtHeight + 1, ::nSLeft + 1, ::aCaption[ n ], nColorLight,,;
If( ::oFont != nil, ::oFont:hFont, 0 ), .T., .T., ::nAlign )
WSay( ::hWnd, ::hDC, ::nSTop + ( n - 1 ) * ::nTxtHeight, ::nSLeft, ::aCaption[ n ], nColorShadow,,;
If( ::oFont != nil, ::oFont:hFont, 0 ), .T., .T., ::nAlign )
next
endif
// 3D
if ::lShaded
WndInset( ::hWnd, ::hDC ) // SHADED, SHADOW
endif
if ::lRaised
WndRaised( ::hWnd, ::hDC ) // RAISED
endif
if ::lBox
WndBoxIn( ::hDC, 0, 0, ::nBottom-::nTop, ::nRight-::nLeft )
WndBoxRaised( ::hDC, 1, 1, ::nBottom-::nTop-1, ::nRight-::nLeft-1 )
endif
::ReleaseDC()
if ::lTransparent
SysRefresh()
endif
return nil
Grato
Aoki
FWH25+XHARBOUR 99.50