TDBAdvGrid scales poorly at 175% in a Frame

When I use a TDBAdvGrid in a Frame, it scales poorly when using a particular set of properties. It works fine at 100% scaling and fine when in a form. So this is only an issue when used in a frame.

It was scaling fine when using ColumnSize Stretch true, ScrollProportional False. But then I changed it to ColumnSize Stretch False, ScrollPorportional True and Issued a grid.AutoSizeCells(true, 5, 0) after reloading the grid.

This is the frame at 100% Windows scaling (good):
image

This is the same frame at 175% Windows scaling (bad):

Notice the "Compress" checkbox position is correct but in the middle of the grid because now the grid encompasses the frame all the way down and all the way to the right, and no scrollbars or other info that is probably under the grid at this point. Note: the [Close] and [Help] buttons are on the form that contains the frame.

Delphi 10.4.2
TDBAdvGrid 2.5.1.8, Align: alNone, Anchors: Left, Top, Right, Bottom.

In other TDBAdvGrids in frames, it sometimes just crops the header, or sometimes crops the header and some rows when at 175%. So the context in where the grid is used in a frame has some influence on the grid display.

Here it cropped the header:

Here it cropped the header and some of the first row:

Same properties as mentioned in the previous post, same parent form, different frames. Only difference is for the Align property, these are both set to alBottom (the grid in the previous post is set to alNone)

If I place the grid inside of a Panel with the same Align/Anchor properties as I had used on the grid and then set the grid to Align: alClient, it solves the problem.

So far, I could not reproduce an issue here.
It looks like your TDBAdvGrid height is handled wrong, but this looks more like a general layout issue at VCL level than something specific in TDBAdvGrid as other than when grid.IntegralHeight = true, the grid will never override the design-time set height or the layout determined height.

If a problem persists, can you please isolate this and provide a sample source app with which this issue could be reproduced. I suggest to also compare the behavior with a standard VCL TStringGrid. If it exhibits the same erratic behavior, it proves the problem is in the VCL and/or IDE designer.

Yeah, I've had other anchor and alignment issues with whatever Embarcadero did with Frames that were introduced in 10.4.2 (and reported it to them). You even had to fix a problem earlier that I reported to you due to those 10.4.2 frame changes, so that is the reason I posted it again about being frame related.

Other anchor related alignment issues with standard controls in frames were mostly solved by encapsulating them inside of panels as was the case here. It was just strange that I saw them only when changing those few properties of the grid, i.e. removing auto-stretch and calling auto column size instead.

Maybe Delphi 11.0 addressed those frame issues they introduced. But if not I can try to isolate it and send you an example in case it is something you need to look at.

If we had a project with which it can be reproduced in 10.4.2, we could test this project as well in Delphi 11.