Avatar billede roger Nybegynder
09. juli 2001 - 17:31 Der er 10 kommentarer og
1 løsning

Dynamisk varibal og name

jeg har et array (string), der indeholder navnene på nogle editbokse.

  q:= q + 1;
  FEdit := TEdit.Create(Self);
  Fedit.Parent := Form2;
  FEdit.Name := \'boks1\';
  FEdit.text := \'\';
  FEdit.Top  := top_x;
  FEdit.Left := left_x;
  mitarray[q]:= FEdit.Name;

Nu vil jeg have skrevet nogle værdier i editboksene.

TEdit(mitarray[1]).Text:=\'hej\'; <--- det virker ikke :(

Nogle der har en løsning ? plz :)

Avatar billede poull Nybegynder
09. juli 2001 - 17:44 #1
det eneste du tilføjer til dit array er navnene på edit-felterne og ikke selve editfelterne og det er derfor det går galt når du prøver at typecaste det til et editfelt.

For at løse det skal du tilføje hele feltet sådan:
mitarray[q]:= FEdit;

og ændre typen på array\'et fra en string til tedit
Avatar billede roger Nybegynder
09. juli 2001 - 17:49 #2
Tusind tak :-)
Avatar billede roger Nybegynder
09. juli 2001 - 17:50 #3
jeg har lige et lille spørgsmål mere.

Det med editboksene du skrev fungerer helt fint, men jeg har også en combobox.

Delphi beklager sig over det her;

mitarray[q]:= FCombobox;
Avatar billede roger Nybegynder
09. juli 2001 - 17:51 #4
lol ikke noget alligevel...det er jo arraytypen
Avatar billede roger Nybegynder
09. juli 2001 - 17:52 #5
ja mig har i sq ikke været heldige med :P
Avatar billede poull Nybegynder
09. juli 2001 - 18:28 #6
Det går nok :)
Avatar billede martinlind Nybegynder
09. juli 2001 - 18:32 #7
roger >> STOP !!!!!!

Det er meget smartere at bruge en stringlist eller TObjectList de har begge Objects property der er en liste af TObject, dvs den kan indeholde alle typer blandet :

MyL : TStringList;


MyL := TStringList.Create;
MyL.AddObject(Edit1.Name,Edit1);
MyL.AddObject(ComboBox1.Name,ComboBox1);
MyL.AddObject(Edit1.Name,Edit1);


og når du skal finde dem kan du bruge IndexOfObjects(); plus alle de andre funktioner på TStringList, som for øvrigt er meget brugt alle steder Items, Lines osv.

/Martin
Avatar billede roger Nybegynder
09. juli 2001 - 18:57 #8
oki tak Martin....jeg vil kigge lidt nærmere på den. Lige pt bruger jeg Pouls. Den forstår jeg nemlig. Jeg er ikke så skrap til Delphi endnu.

Jeg er bare en wannabee :P

men takker for hjælpen Martin.
Avatar billede poull Nybegynder
09. juli 2001 - 19:34 #9
martinlind >>
Der er vel ikke den store forskel bort set fra at det er mere sikkert at bruge fx en stringlist.
Sommetider er et Array mere simpelt og jeg ved ikke hvad angår hastidhed?
Avatar billede martinlind Nybegynder
10. juli 2001 - 09:48 #10
Lige i dette tilfælde, er fordelen bla at den kan håndtere både TEdit og TComboBox, og så er der heller ikke nogen begrænsning på antal.
Avatar billede roger Nybegynder
10. juli 2001 - 10:04 #11
ok
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