Thank you everyone for your quick responses! Am going to try the code below. Already have a checkbox in the grid, so will modify accordingly....
Many, many thanks! Regards, Desmond On 21 October 2011 13:22, Frank Cazabon <frank.caza...@gmail.com> wrote: > Desmond, > > I have some old code that does that (this is really old so no guarantees): > > Add a property to your form called > > ilCallMultiSelect > and set it to .F. > > add a checkbox to a column in the grid and delete the default textbox > that's there. > > This is the checkbox's MouseDown(): > > LPARAMETERS nButton, nShift, nXCoord, nYCoord > > * nButton = 1 (left), 2 (right), or 4 (middle). > > #DEFINE SHIFTKEY 1 > #DEFINE LEFTMOUSEBUTTON 1 > > IF nButton = LEFTMOUSEBUTTON AND nShift = SHIFTKEY > THISFORM.ilCallMultiSelect = .T. > ENDIF > > Checkbox's Click(): > > WITH THISFORM > IF .ilCallMultiSelect = .T. > .ilCallMultiSelect = .F. > MultiSelectCustomers(iOwnerId, 'PrintLetter', 0, 1) > ENDIF > ENDWITH > > CheckBox's KeyPress() > > LPARAMETERS nkeycode,nshiftaltctrl > > IF MultiSelectCustomers(v_SaleLetters.iOwnerId, 'PrintLetter', nkeycode, > nshiftaltctrl) > THIS.Refresh() > ENDIF > DODEFAULT(nkeycode,nshiftaltctrl) > > This is my MultiSelectCustomers program: > > LPARAMETERS tiCustId, tcField, nKeyCode, nShiftAltCtrl > > LOCAL llFound, llRetVal > * we want to let the user hold the shift key down while selecting an item > * and if it is down then all items between this one and the next one > above it will be selected > > #DEFINE SHIFTKEY 1 > #DEFINE ENTERKEY 13 > #DEFINE SPACEBAR 32 > #DEFINE LEFTMOUSE 0 > > IF (nShiftAltCtrl = SHIFTKEY AND INLIST(nKeyCode, ENTERKEY, SPACEBAR)) > AND NOT EVAL(tcField); > OR (nShiftAltCtrl = SHIFTKEY AND nKeyCode = LEFTMOUSE AND > EVAL(tcField)) > > * skip backwards until we find a selected one > DO WHILE !BOF() > SKIP -1 > IF EVAL(tcField) > llFound = .T. > EXIT > ENDIF > ENDDO > > IF llFound > DO WHILE .T. && iCustid # tiCustId > REPLACE (tcField) WITH .T. > IF iOwnerid # tiCustId > SKIP > ELSE > EXIT > ENDIF > ENDDO > ELSE > LOCATE FOR iOwnerId = tiCustId > ENDIF > llRetVal = .T. > ENDIF > > RETURN llRetVal > > > Frank. > > Frank Cazabon > > > > On 21/10/2011 02:01 PM, Desmond Lloyd wrote: > > Alrighty then, > > > > VFP9 grid, with a check box as control for each record. Click on the > check > > box and print a document, great. Grid will have up to 1,200 records in > and > > they need to be able to highlight a range, or click on one and the final > > one (say ten records down) and have the check boxes check in between. > Like > > a multiple select. > > > > Has anyone done this.... Could prompt for a range of records, seems a > > little clumsy, multiple select would be good.... > > > > Regards, > > Desmond > > > > > > --- StripMime Report -- processed MIME parts --- > > multipart/alternative > > text/plain (text body -- kept) > > text/html > > --- > > [excessive quoting removed by server] _______________________________________________ Post Messages to: ProFox@leafe.com Subscription Maintenance: http://leafe.com/mailman/listinfo/profox OT-free version of this list: http://leafe.com/mailman/listinfo/profoxtech Searchable Archive: http://leafe.com/archives/search/profox This message: http://leafe.com/archives/byMID/profox/CAAJXvaPxNXQZ=bbwRu=fgeZ=RMahBEjGVGgtUR4F=vhasdj...@mail.gmail.com ** All postings, unless explicitly stated otherwise, are the opinions of the author, and do not constitute legal or medical advice. This statement is added to the messages for those lawyers who are too stupid to see the obvious.