[vb] array legen

Pagina: 1
Acties:

  • Remco
  • Registratie: Januari 2001
  • Laatst online: 11:45
Ik heb een knopje die een filelisting maakt van bestandjes in een directory,
en deze in een array plaatst:
Visual Basic:
1
2
dim files(30) as integer
files = directory.getfiles(bron, "*.dfu")

Als de lijst ververst word door nogmaals op het knopje te klikken, dan moet de
array eerst leeggemaakt worden, alvorens gevuld te worden.
Nu heb ik gezocht, en gevonden dat je een array als volgt kan legen:
Visual Basic:
1
2
erase files
redim files(30)

Maar om een of andere wazige reden leegt hij de array niet, wat als gevolg heeft dat het programma vastloopt, omdat mijn array volloopt.

Hoe krijg ik een array compleet leeg ?

The best thing about UDP jokes is that I don't care if you get them or not.


  • RobIII
  • Registratie: December 2001
  • Niet online

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

(overleden)
redim files(0)
redim files(100)

:?

Of zit je in een recursieve functie? Want dan heb je jezelf in de (ge)nesten gewerkt :P

en waarom gebruik je geen collection of class ofzo? veel mooier :P

overigens is een ReDim op zich al genoeg om de array leeg te tiefen. Zolang je het "preserve" keyword niet gebruikt wordt de array automagisch leeg gegooid. En Erase moet ook werken...

[ Voor 66% gewijzigd door RobIII op 09-04-2003 12:53 ]

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Je eigen tweaker.me redirect

Over mij


  • Remco
  • Registratie: Januari 2001
  • Laatst online: 11:45
Ben maar een beginner ;)
Dus a.u.b. geen collections of classes............ (nog niet, weet niet hoe dat werkt)

Recursieve functie ?
Nee, denk het niet. Zo moeilijk kan mijn programma nooit zijn ;)
Zal het even proberen of het werkt.

The best thing about UDP jokes is that I don't care if you get them or not.


  • Jerry
  • Registratie: September 2001
  • Laatst online: 24-03 16:08

Jerry

Who?

Hier had ik toevallig vanochtend nog op gezocht :P.

http://www.patorjk.com/tutorial_vbarrays.htm

Hier staat veel info over string arrays en hoe je ze kan legen.

  • Remco
  • Registratie: Januari 2001
  • Laatst online: 11:45
Ok, dat werkt dus.
Maar waarschijnlijk het andere ook....
[schaam-mode]
was vergeten om tellertje ook op 0 te zetten
[/schaam-mode]

@ Mr_UnAnimouS: tnx voor de link, idd een leuke tutorial.

The best thing about UDP jokes is that I don't care if you get them or not.


  • DarkSilence
  • Registratie: December 2002
  • Laatst online: 19-12-2025

DarkSilence

W3designer.nl

ReDim(0) array is weer leeg
ReDim Preserve gebruik je om de inhoud van een array te behouden maar wel groter of kleiner te maken

Suc6

W3designer.nl


  • Sponge
  • Registratie: Januari 2002
  • Laatst online: 15-08 11:47

Sponge

Serious Game Developer

De array is al vast gedimmed, naar 30, dat is dus het probleem. Dan mag je niet meer redimmen.

Redim (0) isNOT the way to go. Dan blijft er nog steeds 1 item over in het geheugen.

code:
1
2
3
4
5
6
7
8
9
10
11
Dim myArray() as Integer '//Geen getal tussen ()!!
Dim I as long
Redim myarray(100)

'//Array volmaken
For I = 0 to 100
 myarray(i) = I *2
Next I

'//Array legen
Erase myarray

  • Mickman
  • Registratie: Juni 2001
  • Laatst online: 29-03 18:11
Ik gebruik meestal myArray = Nothing/Empty
Pagina: 1