loForm = Createobject('myForm') loForm.Show(1) define class myForm as Form add object myGrid as Grid add object myCustom as myCustom function Load() local i create cursor c_something (pk I autoinc, somedata C(10)) for i = 1 to 100 insert into c_something (somedata) values (Sys(2015)) next i return .t. endfunc function Init() this.myGrid.RecordSource = 'c_something' Bindevent(this.myGrid, 'MouseEnter', this.myCustom, 'MouseEnter') return .t. endfunc enddefine define class myCustom as Custom procedure MouseEnter(nButton, nShift, nXCoord, nYCoord) wait window 'MouseEnter fired on Custom' timeout 2 endproc enddefine