Avatar billede velle Nybegynder
06. marts 2002 - 21:52 Der er 6 kommentarer

Variabler der skifter navn... eller noget

Hvis man har en række komponenter, kan man bruge et loop og FindComponent() til at håndtere dem alle. F.eks.:

for i:=1 to 3 do
  TPanel(FindComponent('Panel'+IntToStr(i))).color:=clRed;

Hvad hvis jeg gerne vil ordne en række variabler: OrdVar1, OrdVar2 og OrdVar3, og f.eks. sætte dem alle sammen til '' (altså ingenting). Hvordan gør man det i samme stil?

VH Velle
Avatar billede Slettet bruger
06. marts 2002 - 21:58 #1
lav nogle arrays

Mvh. Simon
Avatar billede Marting Forsker
07. marts 2002 - 08:38 #2
Hej Velle!!!

fandt du ud af at lave det???

Martin
Avatar billede velle Nybegynder
07. marts 2002 - 22:20 #3
jaja, jeg var vist lidt rundt på gulvet igår :-) men tak for "tippet"

Kan man definere variabler senere i programmet. Så hvis der er 9999 tal i en fil og jeg gerne vil have lagt samtlige i en array, så kan jeg vente med at definere arrayen til programmet har talt op hvor mange tal der er i filen. Svar nu lige så I kan få nogen point :-)
Avatar billede Slettet bruger
08. marts 2002 - 20:49 #4
Ja det kan du
Med SetLength();
du skal dog definere arrayet sammen med de andre variable
FX
X:Array of Integer;

Mvh. Simon
Avatar billede velle Nybegynder
08. april 2002 - 20:52 #5
hvad nu hvis det drejer sig om et skema, som skal indeholde 10-20 og 30-40. Hvis jeg havde defineret den med det samme ville den have heddet:

Skema: Array[10..20,30..40] of integer;

Hvad så hvis jeg vil bruge set length...

var
  Skema: Array of integer;
begin
  SetLength(Skema,HVAD SKAL DER STÅ HER);
end;
Avatar billede Slettet bruger
10. april 2002 - 21:13 #6
Det kan ikke lade sig gøre. hvis du bruger et statiskt array.
dit array skal være dynamiskt fx:

type TIArray:Array of Array of Integer;

var
Skema: TIArray;

Procedure LavArray;
var
I:Integer;
Begin
    SetLength(Skema,10);
    For I:=0 10 Length(Skema)-1 Do // skal sætte HVERT under arrays størelse
    SetLength(Skema[I1],10);
End;

Procedure nydim(const D1,D2:Integer var Skema:TIArray);
Var
I:Integer;
Begin
    SetLength(Skema,D1);
    For I:=0 To Length(Skema)-1 Do
    SetLength(Skema[I],D2);
End;

håber du førstår

Mvh. Simon
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