LPARAMETERS nColIndex >llChangingRow = .f. >with this > if lastkey() = 145 && Adding new rec - class specific > .nLastValidRec = .nCurrec && Class specific > endif > thisform.LockScreen = .lInGrid > if mdown() > lnBottom = .top+.headerheight+.relativerow * .rowheight > lnTop = lnBottom - this.rowheight > lnMouseRowPos = mrow(wontop(),3) > lnMouseColPos = mcol(wontop(),3) > llChangingRow = !(between(lnMouseRowPos,lnTop, lnBottom) ; > and between(lnMouseColPos,.left,.left+.width)) > else > llChangingRow = inlist(lastkey(),24,5,18,3,145,148) > endif > * Some keys in list are class specific > if llChangingRow > * Your code here > * nodefault prevents movement > endif >endwithIf you're doing it for newly appended recs and doing tableupdate per row then just checking recno()<0 could be enough too.