Level Extreme platform
Subscription
Corporate profile
Products & Services
Support
Legal
Français
DateTime field on a form
Message
From
19/03/2004 07:51:45
 
General information
Forum:
Visual FoxPro
Category:
Forms & Form designer
Miscellaneous
Thread ID:
00887365
Message ID:
00887834
Views:
7
I see publishing a FAQ is a long process.

Start with this:
PUBLIC oform1

oform1=NEWOBJECT("testForm")
oform1.Show
RETURN

DEFINE CLASS testForm as form

	Caption = "edit only date of datetime"

	ADD OBJECT text1 AS textbox WITH ;
		Alignment = 3, ;
		Value = (DATETIME()), ;
		Height = 23, ;
		Left = 124, ;
		Top = 11, ;
		Width = 100, ;
		Name = "Text1"

	ADD OBJECT dtextbox1 AS dtextbox WITH ;
		Left = 14, ;
		Top = 11, ;
		mycontrolsource = "M.THISFORM.TEXT1.VALUE", ;
		Name = "Dtextbox1"

	ADD OBJECT grid1 AS myGrid WITH ;
		Height = 181, ;
		Left = 14, ;
		Top = 47, ;
		RecordSource = "dateCursor",	;
		Column1.Bound = .F., ;
		Column1.Width = 203, ;
		Column1.Sparse = .F., ;
		Column1.Name = "Column1",	;
		Column1.header1.Alignment		= 2, ;
		Column1.header1.Caption			= "date in datetime",	;
		Column1.cltext.myControlsource	= "dateCursor.tField"
	
	PROCEDURE Load
		CREATE CURSOR dateCursor ( tField T)
		FOR I = 1 TO 10
		 INSERT INTO dateCursor VALUES (DATETIME()+RAND()*1000)
		ENDFOR
		GO TOP
	ENDPROC

ENDDEFINE

DEFINE CLASS myGrid AS grid
	ADD OBJECT Column1 AS myColumn
ENDDEFINE

DEFINE CLASS myColumn AS Column
	ADD OBJECT header1 as header
	ADD OBJECT cltext  AS dtextbox
ENDDEFINE

** CLASS FOR EDIT THE DATE **

DEFINE CLASS dtextbox AS textbox

	ControlSource = "m.this._Controlsource"
	HIDDEN ControlSource
	NullDisplay = "< undefined >"
	MyControlSource = "NULL"
	_ControlSource = {}
*	HIDDEN _ControlSource  	 && a structural error of VFP OOP stop this correct setting
*	PROTECTED _ControlSource && a error of VFP with grid stop this setting

	HIDDEN PROCEDURE _ControlSource_Access
		RETURN TTOD(EVALUATE(m.this.MyControlSource))
	ENDPROC

	HIDDEN PROCEDURE _ControlSource_Assign
		LPARAMETERS dValue
		IF m.this.MyControlSource="M."	&& a variable or properties
			STORE DTOT(m.dValue) TO (m.this.MyControlSource)
		ELSE
			REPLACE (m.this.MyControlSource) WITH DTOT(m.dValue)
		ENDIF
	ENDPROC

	HIDDEN PROCEDURE MyControlSource_Assign
		LPARAMETERS sControlSource
		IF TYPE("m.sControlSource")=="T"	&& this skip bad source
			THIS.MyControlSource = UPPER(m.sControlSource)
		ENDIF
	ENDPROC

ENDDEFINE
Fabio
Previous
Reply
Map
View

Click here to load this message in the networking platform