I tried also with oMessage:WinStyle(WS_BORDER, .f.) but the border of Dialos there is allways
How I can resolve ?
the test
- Code: Select all Expand view
#include "FiveWin.ch"
#include "constant.ch"
function MsgFancy( cMsg )
local oDlg, oBrush,oBmp1,oBmp2,oFont
DEFINE FONT oFont NAME "Verdana" BOLD
DEFINE BITMAP oBmp1 filename "MESSAGE.png"
DEFINE BITMAP oBmp2 filename "MESSAGE.png"
DEFINE BRUSH oBrush COLOR CLR_BLUE // STYLE NULL // Transparent painting !
DEFINE DIALOG oDlg SIZE 123,122;
STYLE WS_POPUP ;
BRUSH oBrush ;
ACTIVATE DIALOG oDlg CENTERED ;
ON PAINT ( PalBmpDraw( oDlg:hDC, 0, 0, oBmp2:hBitmap, 0, 0, 0, SRCPAINT ),;
PalBmpDraw( oDlg:hDC, 0, 0, oBmp1:hBitmap, 0, 0, 0, SRCAND ),;
oDlg:Say( 3.7, 10, cMsg,,, oFont ) ) ;
ON LEFT CLICK oDlg:End() ;
ON INIT SetTransparent( oDlg )
return nil
#define LWA_COLORKEY 2
#define GWL_EXSTYLE -20
#define WS_EX_LAYERED 524288
static function SetTransparent( oDlg )
SetWindowLong( oDlg:hWnd, GWL_EXSTYLE, nOr( GetWindowLong( oDlg:hWnd, GWL_EXSTYLE ), WS_EX_LAYERED ) )
SetLayeredWindowAttributes( oDlg:hWnd, 0, 180, LWA_COLORKEY )
return nil
the image