hi jimmy.
i can make this work on hmg .
code.
#include "
hmg.ch"
#define BorderPadding 6
procedure Main()
local latmp
LOCAL lHwnd ,hRgn
LOCAL nLeftRect ,nTopRect ,nRightRect ,nBottomRect
DEFINE WINDOW Form_1 ;
AT 0 ,0 ;
WIDTH 600 HEIGHT 600 ;
TITLE 'HMG Demo' ;
MAIN ;
NOSYSMENU TITLEBAR .F. BACKCOLOR { 1 ,1 ,1 }
@ 100,180 TEXTBOX Text_1 ;
VALUE 123 ;
TOOLTIP 'Numeric TextBox' ;
NUMERIC ;
MAXLENGTH 5 ;
RIGHTALIGN
@ 150,180 TEXTBOX Text_2 ;
VALUE 'Hi All' ;
TOOLTIP 'Character TextBox' ;
DISABLEDBACKCOLOR { 0,255,0 } ;
DISABLEDFONTCOLOR { 255,255,255 }
@ 200,180 TEXTBOX Text_3 ;
HEIGHT 30 WIDTH 120 ;
VALUE time() READONLY FONT 'CONSOLAS' SIZE 18 ;
DISABLEDBACKCOLOR { 0,255,0 } ;
DISABLEDFONTCOLOR { 255,0,0 }
DEFINE BUTTON C
ROW 300
COL 50
WIDTH 150
HEIGHT 50
CAPTION 'Set Text_2 ReadOnly .T.'
ACTION Form_1.Text_2.ReadOnly := .T.
END BUTTON
DEFINE BUTTON D
ROW 300
COL 220
WIDTH 150
HEIGHT 50
CAPTION 'Set Text_2 ReadOnly .F.'
ACTION Form_1.Text_2.ReadOnly := .F.
END BUTTON
DEFINE BUTTON X
ROW 300
COL 390
WIDTH 150
HEIGHT 50
CAPTION 'Exit'
ACTION domethod( 'Form_1' ,'release' )
END BUTTON
DEFINE TIMER Timer_1 ;
INTERVAL 1000 ;
ACTION setproperty( 'Form_1' ,'text_3' ,'value' ,time() )
END WINDOW
Form_1.Center
lHwnd := getproperty( 'form_1' ,'handle' )
//
// get oDlg:DrawingArea Size
//
laTmp := uf_getsize( GetFormHandle( 'form_1' ) ) //oDWM:DrawingArea:Currentsize()
nLeftRect := BorderPadding
nTopRect := laTmp[2] - (2*BorderPadding)
nRightRect := laTmp[1] - (2*BorderPadding)
nBottomRect := BorderPadding // nTitlehigh
lhRgn := uf_CreateEllipticRgn( nLeftRect ,nTopRect ,nRightRect ,nBottomRect)
uf_SetWindowRgn( lHwnd ,lhRgn )
uf_DwmEnableBlurBehindWindow( lHwnd ,lhRgn )
Form_1.Activate
Return
******************************