Hallo beanie,
hier ein Beispiel mit nur einer Spalte,
vielleicht hilft es Dir:
Delphi-Quellcode:
CONST
// Breite der Form beim Start
FormWidth = 580;
// Breite der 0. Spalte des Grids beim Start
ColWith0 = 100;
IMPLEMENTATION
{$R *.DFM}
PROCEDURE TForm1.FormResize(Sender: TObject);
BEGIN
WITH StringGrid1 DO
BEGIN
// Prozentuale Anpassung der 0. Spalte beim Vergrößern/Verkleinern des Forms nach Rechts/Links
ColWidths[0] := Round(ColWith0 * Self.Width / FormWidth);
END;
END;
p.s. Bei vielen Spalten mußt Du vielleicht am Faktor arbeiten (z.B. in Abh. der Spaltenanzahl,...)