TDBgrid OnENter NOT the first event ?

I have a TDBGrid.  Above it is a TDBNavigator.  They are both connected
to the same dataset.

The TDBGrid has an OnEnter.  This pops up a dialog where the user selects an
itemcode (this goes in the first column of the dbgrid, and is not editable by
the user in the grid).

Some of the users move to fast: they click ADD in the navigator and then hit the
keyboard-key: tab.

The TDBGrid is processing this tab BEFORE the OnEnter.  As a result, if they
were previously focused on the last (rightmost) column of the grid, they get a
SAVE dialog before the itemcode dialog ever pops up.

I don't understand how a keyboarded TAB can get processed by the grid BEFORE the
OnEnter event.

More importantly, jI don't know how to fix this (I don't want to just intercept
the TAB key because that's a hack that will only work for the TAB key).  I want
a way to...

Hmmm.  As a workaround, it just occurred to me that I could just connect my
dialog code to the TDBNavigator, instead of the grid's ONENTER.

Nevermind <g>.

PS   Posting this for comment though - I would have thought ONENTER would the
very first event processed by a control, not keyboard input or keys in the input



Richard Grossman