PROCEDURE KEYPRESS LPARAMETERS nKeyCode, nShiftAltCtrl LOCAL lnIndex,lnStartIndex,lnCursorPosition,lnSelLength WITH THIS DO CASE CASE .lDataRequery AND .PARENT.lAddRecord ; &&Adding record & requery combobox - no dropdown AND (nKeyCode=-3 AND nShiftAltCtrl=0 ; && Disable F4 OR nKeyCode=160 AND nShiftAltCtrl=4) && Disable ALT+DOWNARROW NODEFAULT CASE .SELSTART = 0 AND .lDataRequery AND nKeyCode = 32 NODEFAULT .SELLENGTH = 0 KEYBOARD "{alt+dnarrow}" PLAIN && Hitting the spacebar opens the dropdown CASE .STYLE = 2 DODEFAULT() CASE BETWEEN(nKeyCode, 32, 122) && this does all the work lnStartIndex = 1 IF .SELSTART > 0 lnStartIndex = .LISTINDEX ENDIF FOR lnIndex = lnStartIndex TO .LISTCOUNT IF UPPER(SUBSTR(.LIST(lnIndex), 1, .SELSTART+ 1)) = ; UPPER(SUBSTR(.TEXT, 1, .SELSTART)+CHR(nKeyCode)) lnCursorPosition = .SELSTART + 1 .DISPLAYVALUE = .LIST(lnIndex) .SELSTART = lnCursorPosition lnSelLength = LEN(ALLTRIM(.LIST(lnIndex))) - lnCursorPosition IF lnSelLength > 0 .SELLENGTH = lnSelLength ENDIF NODEFAULT EXIT ENDIF ENDFOR ENDCASE ENDWITH ENDPROC>Since VFP 3.0 I have always had problems with the native VFP combo Box. Depending on the speed of the computer the user had, and how fast they would type I sometimes would get different results. Like for instance if I had a combo box based on a states library and on machine 1 I type "NY" the value of the combo box would sometimes go to "NY" sometime go to the first State that started with "Y". I was just wondering if Microsoft has addressed this problem since VFP 3.0 or if anyone has a work around for this.