Odd behaviour of FixedColumnSizing in TTMSFMXGrid

Imagine a grid with 1 fixed column and 1 fixed row.

If ColumnSizing is true and FixedColumnSizing is false then it works as expected, except that you can't resize a non-fixed column by hovering over the borders of the fixed row.  The resizing icon is only available if you hover over a vertical border that separates two non-fixed cells.

To be able to resize a non-fixed column by hovering over the border between two cells in the fixed row (i.e. at the top) you have to set FixedColumnSIzing to true, which then of course enables resizing of the fixed column.

Is this a bug or is there some other way to enable resizing of non-fixed columns by hovering over the vertical cell borders on the fixed row?

RowSizing is in the vertical direction while ColumnSizing is in the horizontal direction, so setting FixedColumnSizing to True will allow you to size a column, when hovering a fixed cell at the top, the cell at that point is actually part of the column, not the row.

Hi Pieter
Here is a diagram that explains my issue better.  In order for the red lines to be usable for column sizing I have to set FixedColumnSizing to true but that also makes the blue line usable, which I don't want.  I would expect that ColumnSizing = true and FixedColumSizing = false should make both red and green usable but it doesn't.

Jay



ColumnSizing = true means that columns can be resized with the mouse from normal cells.

FixedColumnSizing = true means that columns can be resized with the mouse from fixed cells.
If you do not want the blue line, set FixedColumnSizing = true and add the event handler:

procedure TForm1.TMSFNCGrid1CanSizeColumn(Sender: TObject; ACol: Integer;
  var Allow: Boolean);
begin
  Allow := ACol > 0;
end;

Thanks Bruno, that's great.