Avatar billede plazm Nybegynder
06. oktober 2005 - 23:04 Der er 6 kommentarer og
1 løsning

Resize cols når resize form

Hej.
Ved i om der findes en function der ved resize af form, kan resize alle colwidths i en StringGrid med anchors op i samme forhold ?

Jeg har selv prøvet, men det kom ikke til at passe helt, da mit forhold mellem før og efter ikke blev præcist nok. Det skyldes at jeg ikke kunne få gemt breden på cols før jeg startede resize.
Avatar billede kroning Nybegynder
06. oktober 2005 - 23:17 #1
Hvis du i din Form create gemmer forholdet mellem de enkelte cols og form bredden kan du så ikke bruge disse tal i FormRezise?
Avatar billede plazm Nybegynder
06. oktober 2005 - 23:26 #2
Jo, det må jeg da egentligt kunne, det prøver jeg lige i morgen. Sengetid.
Avatar billede plazm Nybegynder
07. oktober 2005 - 23:05 #3
du føler ikk for at lave et forslag, for det jeg får lavet, ender altid med at de ryger ud af forholdet til hinanden.
Grunden til at jeg ikk har smidt min kode, er for ikke at smadre din hjerne så den tænker på samme måde som mig ;)
Avatar billede kroning Nybegynder
08. oktober 2005 - 00:00 #4
Jeg har en form med en StringGrid1 på som er sat til alTop.

Definer denne variabel:
SCols : array of real;

I FormCreate har jeg:
var
    i : integer;
begin
    SetLength(SCols,StringGrid1.ColCount+1);

    for i:=0 to StringGrid1.ColCount-1 do
        SCols[0]:=SCols[0]+StringGrid1.ColWidths[i];

    for i:=0 to StringGrid1.ColCount-1 do
        SCols[i+1]:=StringGrid1.ColWidths[i]/SCols[0];

  SCols[0]:=StringGrid1.Width-SCols[0];
end;

I FormResize har jeg:
var
    i : integer;
begin
    for i:=0 to StringGrid1.ColCount-1 do
        StringGrid1.ColWidths[i]:=Round((StringGrid1.Width-SCols[0]) *SCols[i+1]);
end;


Jeg prøvede først blot at kikke på forholdet mellem de enkelte cols og bredden af StringGrid men det virkede ikke helt, så det koden nu gør er at kikke på hvor meget fri plads der er i StringGrid og så sørge for at det hele tiden er det samme.
Avatar billede plazm Nybegynder
08. oktober 2005 - 00:07 #5
Det ser ud til at virke fint,sådan da, så det bliver det, indtil videre. smider du et svar ?
Avatar billede kroning Nybegynder
08. oktober 2005 - 00:22 #6
"sådan da"? hvad virker ikke som det skal?
Avatar billede plazm Nybegynder
08. oktober 2005 - 09:53 #7
Den forskyder dem stadig lidt, men det er uden betydning.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester