14. april 2005 - 09:22Der er
19 kommentarer og 1 løsning
Arrays og objekter
Jeg har et array hvor i jeg gerne vil placere x antal objekter, og jeg skal dynamisk kunne tilføje flere objekter. Hvis jeg gør: Dim myArr(1) set myObj1 = new Obj set myObj2 = new Obj set myArr(0) myObj1 set myArr(1) myObj2
Virker det fint.
Det jeg gerne vil er: Dim myArr(0) set myObj1 = new Obj set myObj2 = new Obj set myArr(0) myObj1 ReDim Preserve myArr(1) set myArr(1) myObj2
Her får jeg en fejl om at mit array er 'fixed or locked' Hvordan får jeg løst dette?
jo det gør jeg da også: set thisPage1 = new Page set thisPage2 = new Page thisPage1.pageName = "thisPage1" thisPage2.pageName = "thisPage2" Dim myObjArr(0) set myObjArr(0) = thisPage1 Dim myObjArr(1) set myObjArr(1) = thisPage2
Normalt ville jeg også skrive Redim Preserve myObjArr(1) -> men her får jeg så: Microsoft VBScript runtime error '800a000a'
Men hvor har du skrevet det jeg foreslår 14/04-2005 09:35:54 ?? Hvis du ikke vil bruge et forslag er du velkommen til at lade være, men det vil være pænt at nævne det.
erikjacobsen: set thisPage1 = new Page set thisPage2 = new Page thisPage1.pageName = "thisPage1" thisPage2.pageName = "thisPage2" Dim myObjArr(0) set myObjArr(0) = thisPage1 Dim myObjArr() Redim myObjArr(1) set myObjArr(1) = thisPage2
skyggen2000: Det der står i guiden er faktisk også det jeg har gjort. Mit problem ligger i at arrayet bliver 'locked' når jeg sætter et objekt ind i det.
Kan man 'slukke' for et array så man efterfølgende kan oprette det igen uden at få en ->Name redefined
set thisPage1 = new Page set thisPage2 = new Page thisPage1.pageName = "thisPage1" thisPage2.pageName = "thisPage2" Dim myObjArr() Redim myObjArr(0) set myObjArr(0) = thisPage1 Redim preserve myObjArr(1) set myObjArr(1) = thisPage2
Det er der ingen grund til. Jeg samler slet ikke på point.
Synes godt om
Ny brugerNybegynder
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.