>*this shows a simulation of enabled/disabled controls if they are not grayed as well natively with vfp. >*idea is to add another control (image) or here a particular shape with drawmode property making it transparent. >*mouseEnter enables all container controls,mouseLeave covers the container by the grayed transparent shape. > >Public oform1 >oform1=Newobject("form1") >oform1.Show >Return >* >Define Class form1 As Form > Top = 84 > Left = 316 > Height = 138 > Width = 349 > Caption = "Enable/disable by masking a container" > Name = "form1" > > Add Object container1 As Cnt With ; > Top = 11, ; > Left = 24, ; > Width = 144, ; > Height = 84, ; > Name = "Container1" > > Procedure my1 > Lparameters nButton, nShift, nXCoord, nYCoord > This.shp.Visible=.F. > Endproc > > Procedure container1.MouseLeave > Lparameters nButton, nShift, nXCoord, nYCoord > Try > Thisform.shp.Visible=.T. > Catch > Endtry > Endproc > > Procedure container1.MouseEnter > Lparameters nButton, nShift, nXCoord, nYCoord > Try > Thisform.shp.Visible=.F. > Catch > Endtry > Endproc >Enddefine >* >*-- EndDefine: form1 > > >*container class for simulate your class calendar container >Define Class Cnt As Container > Top = 11 > Left = 24 > Width = 144 > Height = 84 > Name = "CNT" > > Add Object text1 As TextBox With ; > Height = 25, ; > Left = 16, ; > Top = 12, ; > Width = 107, ; > Name = "Text1" > > Add Object command1 As CommandButton With ; > Top = 42, ; > Left = 58, ; > Height = 25, ; > Width = 73, ; > FontBold = .T., ; > Caption = "Command1", ; > Name = "Command1" > > Add Object text2 As TextBox With ; > Height = 25, ; > Left = 14, ; > Top = 43, ; > Width = 40, ; > Name = "Text2" > > Procedure Init > Local m.xleft,m.xtop,m.xwidth,m.xheight > With This > m.xleft=.Left > m.xtop=.Top > m.xwidth=.Width > m.xheight=.Height > Endwith > > With Thisform > .AddObject("shp","shape") > With .shp > .Left=m.xleft > .Top=m.xtop > .Width=m.xwidth > .Height=m.xheight > .DrawMode=14 && important > .BackColor=Rgb(128,128,128) > .Curvature=0 &&can here set round rectangle... > .ZOrder(0) > .Visible=.T. > Endwith > Endwith > Bindevent(Thisform.shp,"mouseEnter",Thisform,"my1") > Endproc > > Procedure MouseEnter > Lparameters nButton, nShift, nXCoord, nYCoord > Try > Thisform.shp.Visible=.F. > Catch > Endtry > Endproc > > Procedure MouseLeave > Lparameters nButton, nShift, nXCoord, nYCoord > Try > Thisform.shp.Visible=.T. > Catch > Endtry > Endproc >Enddefine >* >*-- EndDefine: Cnt >