Subject IB_grid user interface quirk: vertical scrolling results in undesired horizonta
Author melr_la
I encounter the following user interface quirk with IB_grid when used
with Delphi.

When trying to display more columns than the grid is set to show; and
when the grid has been scrolled horizontally to the right; and when
the grid is then scrolled vertically down; the grid may suddenly and
reflexively scroll to the leftmost column. Downward scrolling may
then take place. This makes it very difficult to scroll vertically
downward while observing the rightmost columns.

With further observation I noticed the sudden horizontal scrolling is
done to make certain the cell with current focus is being displayed.
In the above example, when the grid has been horizontally scrolled to
the right the cell with current focus disappeared on the left.

I tinkered with some settings and found that if TrackGridRow is set
to True this quirky behavior almost disappears. Vertical scrolling
takes place in a more pleasing and useful manner as long as the
grid's current row is not in the vicinity of the row which has the
cell with current focus. However, once a vertical movement brings
the cell with current focus possibly into view, an automatic
horizontal scroll takes place so that cell can be displayed.

How can the grid be made to scroll vertically without causing any
horizontal scrolling no matter what the situation?

Thank you!