anoniem Geplaatst: 10 mei 2004 Delen Geplaatst: 10 mei 2004 Hoi, Ik heb een paar vraagjes over arrays in Visual Basic 6. 1: Hoe kun je kijken wat de minimum en de maximum index in een array is? (Je hebt bijvoorbeeld de array als volgt gedefinieerd: aDing(1 to 10), het minimum is dus 1 en het maximum 10, maar hoe kun je dit vanuit de code controleren?) 2: Hoe kun je kijken hoe veel items er in de array zitten? 3: Is het mogelijk om automatisch alles te laten opschuiven als er een item tussen uit wordt gehaald en zo ja hoe? (Ik bedoel dus dat er bv. 4 items in de array zitten en ik haal nr 2 er uit, dat nrs 3 en 4 dan eentje omhoog schuiven en dus nr 2 en 3 worden. Dit ziet er als volgt uit: ding 1 ding 2 ding 3 ding 4 je haalt ding 2 weg n dan krijg je ding 1 ding 2 ding 3 ipv. ding 1 ding 3 ding 4 Ik hoop dat iemand begrijpt wat ik bedoel :) ) 4: Hoe is het mogelijk om in 1 array 2 (of meerdere) intanties van 2 (of meerdere) verschillende classes (eventueel zelf geschreven) te stoppen? bijvoorbeeld array aDingen(1 to 10) met op index 1 een instantie van Ding en op index 2 een instantie van AnderDing, als je begrijpt wat ik bedoel. Nou, een hoop vragen, en hopelijk ook een boel antwoorden :D Adios, El Loco Quote Link naar reactie
anoniem Geplaatst: 10 mei 2004 Auteur Delen Geplaatst: 10 mei 2004 [quote:7c387bc697="elloco"] 1: Hoe kun je kijken wat de minimum en de maximum index in een array is? (Je hebt bijvoorbeeld de array als volgt gedefinieerd: aDing(1 to 10), het minimum is dus 1 en het maximum 10, maar hoe kun je dit vanuit de code controleren?) [/quote:7c387bc697] minimun = LBound(aDing) maximum = UBound(aDing) Dit zou fout gaan als de array niet geinitialiseerd is. (Ik kan dit zo ff niet verifieren) [quote:7c387bc697="elloco"] 2: Hoe kun je kijken hoe veel items er in de array zitten? [/quote:7c387bc697] Goochelen met LBound(aDing) en UBound(aDing). Let op: Als ik me niet vergis, dan kan LBound(aDing) ook negatief zijn. (Ik kan dit zo ff niet verifieren) [quote:7c387bc697="elloco"] 3: Is het mogelijk om automatisch alles te laten opschuiven als er een item tussen uit wordt gehaald en zo ja hoe? (Ik bedoel dus dat er bv. 4 items in de array zitten en ik haal nr 2 er uit, dat nrs 3 en 4 dan eentje omhoog schuiven en dus nr 2 en 3 worden. Dit ziet er als volgt uit: ding 1 ding 2 ding 3 ding 4 je haalt ding 2 weg n dan krijg je ding 1 ding 2 ding 3 ipv. ding 1 ding 3 ding 4 Ik hoop dat iemand begrijpt wat ik bedoel :) ) [/quote:7c387bc697] Wellicht is daar een specifieke array functie voor? Anders zou je het in meerdere delen moeten opsplitsen met gebruik van een Redim. ofzo... [quote:7c387bc697="elloco"] 4: Hoe is het mogelijk om in 1 array 2 (of meerdere) intanties van 2 (of meerdere) verschillende classes (eventueel zelf geschreven) te stoppen? bijvoorbeeld array aDingen(1 to 10) met op index 1 een instantie van Ding en op index 2 een instantie van AnderDing, als je begrijpt wat ik bedoel. [/quote:7c387bc697] Het "makkelijkst" is denk ik de inhoud van de array definieren als Object of Variant. En dan naar gelang typecasten ofzo. Quote Link naar reactie
anoniem Geplaatst: 12 mei 2004 Auteur Delen Geplaatst: 12 mei 2004 2: Hoe kun je kijken hoe veel items er in de array zitten?: ik ga ervan uit dat je hierme bedoelt of er iets in staat dus of er iets in array(1) iets staat: kan je makkelijk met een loop doen, dus: for i = lbound(array) to ubound(array) 'in count komt dan dus het aantal lege plekken in de array te staan if array(i) = "" then count = count + 1 'zo zie je hoeveel er vol zijn: if not array(i) = "" then count = count + 1 next bij vraag 3 weet ik niks anders te bedenken dan alles gewoon te laten opschuiven, dus als je ding 2 weg haalt dat dan ding 3 naar ding 2 opschuift.. gewoon subje maken, kan hem nu wel maken alleen kan ik hem niet controleren.. dus.. als je hem alsnog wilt hebben moet je maar gillen :lol: vraag 4 kan volgens mij zo: 'class heet hier cClass 'of test(10) (wist je trouwens dat met option base in te stellen is waar de array begint? moet je bij option explicit zetten dus: option base 1 dan beint bij 1 option base 0 bij 0...) dim test() as new cClass nogmaals kan het niet testen.. moet je maar ff kijken of het werkt.. Succes! :wink: Quote Link naar reactie
anoniem Geplaatst: 19 mei 2004 Auteur Delen Geplaatst: 19 mei 2004 Allemaal heel erg bedankt voor de hulp. Alleen zit ik nu met een ander probleem (nou ja, probleem... :) ) Ik heb nu Visual Studio .NET 2003, dus het werkt nu allemaal weer iets anders... Gelukkig werkt de MSDN nu wel naar behoren (als ik bij een foutmelding op "Help" druk, krijg ik ook echt de helpfile te zien...) Adios, El Loco Quote Link naar reactie
anoniem Geplaatst: 21 mei 2004 Auteur Delen Geplaatst: 21 mei 2004 in visual studio .net kun je projecten vanuit vb 6 overzetten naar vb .net Quote Link naar reactie
anoniem Geplaatst: 22 mei 2004 Auteur Delen Geplaatst: 22 mei 2004 In Visual Studio .NET 2003 is het veel makkelijker. In tegenstelling tot VB6 heeft elke array als lowerbound 0. De upperbound vraag je uit met mijnArray.UpperBound Het aantal items vraag je uit met mijnArray.Length Quote Link naar reactie
Aanbevolen berichten
Om een reactie te plaatsen, moet je eerst inloggen