local logridmonitor browse name loMyGrid nowait logridmonitor = createobject('CusGrdMonitor') browse last return define class cusGrdMonitor as Custom oGrid = loMyGrid procedure Destroy THIS.oGrid = .NULL. endproc procedure oGrid.Column1.Resize wait window transform(THIS.Width) && THIS is an object reference to Column1 endproc procedure oGrid.AfterRowColChange lparameters nColIndex wait window transform(nColIndex) endproc enddefineThere is a problem with this code. It leaves an object reference somewhere to the Grid object specified in the Name clause and the Browse window remains displayed. It isn't active and you can't make it active. If you issue a CLEAR ALL, it releases it. This may have something to do with the unreleased object reference in an Assign method bug reported here a month or so ago.