If you set TAdvStringGrid's GridLineWidth property to a value greater than 1, cells are not rendered correctly, resulting in cell areas not correctly drawn. The reason for this is the cell rectangle compuation in TMS VCL UI Pack version 10.7.9.1, BaseGrid.pas, line 711:
Inflaterect(ARect, -FGridLineWidth, -FGridLineWidth);
I found that replacing this line by
begin
ARect.Left := ARect.Left +1;
ARect.Top := ARect.Top +1;
ARect.Right := ARect.Right -FGridLineWidth;
ARect.Bottom := ARect.Bottom -FGridLineWidth;
end;
fixes the issue.
Do you have more details about the exact circumstances where the rendering is not correct as I retested this here and could so far not notice issues?
Ok, I found that this behaviour is VCL style dependent. Use, for example, "Windows11 Modern Dark" and set grid option goRowSelect. You'll see that the selected row iniitially has white (not drawn) areas. Once you navigate up and down with the cursor keys, the white areas of the selected row are now black.
I could still not reproduce this here.
Please send a test project + screenshot + steps + Delphi version details + operating system details.
Where/to whom should I send the stuff?
Thanks.
We could reproduce this.
We applied improvements that will be included in the next release.