Witam, czy istnieje jakaś prosta instrukcja, która odpowiadałaby za automatyczne dopasowanie szerokości (DBgrida, formy, panelu, położenia przycisków) do całkowitej szerokości wszystkich wyświetlanych kolumn w DBgridzie?
Przykład na rysunku niżej(również w załączniku):
W tym przykładzie posłużyłem się napisanym przez siebie kodem, jednak czy istnieje jakiś lepszy sposób, aby w łatwiejszy sposób uzyskać identyczny efekt?
wynik:=0;
for i:=0 to dbgrid1.Columns.Count - 1 do
begin
w[i]:=dbgrid1.Columns.Items[i].Width;
wynik:= wynik + w[i];
end;
if ((wynik+191) > screen.Width) then wynik:=screen.Width-191; //191 - odstęp od krawędzi ost kolumny do krawędzi formularza
dbgrid1.Width:=wynik+41; //dodatkowe 41 na pasek
panel1.Width:=dbgrid1.Width+80; //dodatkowe 80 na odstęp między gridem a końcem panelu
FmBazaWyc.Width:=panel1.Width+70; //dodatkowe 70 na odstęp między krawędzią panelu, a końcem formularza.
button2.Left:=FmBazaWyc.Width-185;
button1.Left:=FmBazaWyc.Width-273;
imagebutton4.Left:=FmBazaWyc.Width-100;