AdvStringGrid Advance On Enter Overwriting Text Values

Hello, I am using Delphi 10.4.1 and the TMS VCL UI Pack Version

I have an AdvStringGrid that I am using to collect text and numeric data. In the grid, information will be entered into a value column. The first cell in the value column has an edit type of edNormal to accept a text value, and the remaining rows have an edit type of edFloatSpinEdit. I have configured the grid parameters so the return key, tab, or arrow can be used to advance down the column to the next cell while editing values. I have copied the relevant settings below.

When advancing from the first value to the second value I am getting inconsistent results. After a text value is entered into the first cell, if tab is pressed, the text value is stored in the first cell and the selection advances down one cell. If the return key or down arrow is pressed to move from the first cell to the second cell, the cell selection advances down one cell, but the text value in the first cell is replaced by a numeric value.

I created a video of the behavior in a demo project: AdvStringGrid Auto Advance - YouTube

I would like to configure the project so that I get consistent behavior when advancing between the first and second cells and so that the text value is not overwritten by a numeric value when the active cell changes. Is there a problem with my configuration that is causing this behavior? I can provide the project I am using to test this if it would be helpful.

Any help you can provide on this issue is appreciated.

Grid Properties:

  • Mouse Actions
    • Direct Edit = true
    • WheelAction = waMoveSelection
    • WheelIncrement = 1
  • Navigation
    • AlwaysEdit = false
    • AdvanceAuto = true
    • AdvanceAutoEdit = false
    • AdvanceOnEnter = true
    • AdvanceSkipReadOnlyCells = true
    • AdvanceDirection = adTopBottomInCol
    • TabAdvanceDirection = adTopBottomInCol

Grid Events:

  • CanEditCell
    • Restricts editing to only column 2
  • CellChanging
    • Allows editing for all cells
  • GetEditorType
    • Defines the editor for each row

I cannot reproduce this with the project I tried to reconstruct based on your information. (5.7 KB)
It would have been far more efficient to send us a test project directly.


Attached are the project files for the demo in the video.

DemoForm.dpr (240 Bytes)
DemoForm.dproj (50.0 KB)
MainForm.dfm (6.0 KB)
MainForm.pas (1.7 KB)

We implemented a fix for this that will be included in the next update.

Thank you for your quick response, we will wait for the next release.