[\] + THIS.VALUEAs far as the mouse, if you click on a disabled item, focus automatically moves.
>>PUBLIC oForm1 >>PUBLIC LASTKEY >>oForm1 = CREAT([oForm]) >>oForm1.SHOW >> >>DEFINE CLASS oForm AS FORM >> ADD OBJECT oList1 AS oList >> ADD OBJECT oButton1 AS oButton >>ENDDEFINE >> >>DEFINE CLASS oList AS LISTBOX >> ROWSOURCE = [1,2,3,4,5,6,7,8,9] >> ROWSOURCETYPE = 1 >> PROC KEYPRESS >> LPARAMETERS nKeyCode, nShiftAltCtrl >> DO CASE >> CASE nKeyCode = 5 >> LASTKEY = 5 >> CASE nKeyCode = 24 >> LASTKEY = 24 >> ENDCASE >>ENDPROC >> PROC INTERACTIVECHANGE >> DO CASE >> CASE OCCURS([\] + THIS.VALUE, THIS.ROWSOURCE) > 0 AND LASTKEY = 24 >> KEYB [{DNARROW}] >> CASE OCCURS([\] + THIS.VALUE, THIS.ROWSOURCE) > 0 AND LASTKEY = 5 >> KEYB [{UPARROW}] >> ENDCASE >>ENDPROC >>ENDDEFINE >> >>DEFINE CLASS oButton AS COMMANDBUTTON >> CAPTION = [Disable List Item] >> LEFT = 100 >> PROC CLICK >> IF isblank(THISFORM.oList1.VALUE) >> MESSAGEBOX([Select an item in the List that you want to disable.]) >> ELSE >> THISFORM.oList1.ROWSOURCE = STRTRAN(THISFORM.oList1.ROWSOURCE, THISFORM.oList1.VALUE, [\] + THISFORM.oList1.VALUE) >> ENDIF >>ENDPROC >>ENDDEFINE>>Dave