Ga naar inhoud

Problemen met classes in VB 6


Aanbevolen berichten

Hoi, Ik heb een probleem met het volgende: Ik heb een zelf geschreven class Ding. Deze class heeft een string Name, een integer Number en een string Info. De code staat hieronder. [code:1:a0458f335d] Option Explicit Private strName As String Private intNumber As Integer Private strInfo As String Public Function getName() As String getName = strName End Function Public Function getNumber() As Integer getNumber = intNumber End Function Public Function getInfo() As String getInfo = strInfo End Function Public Sub setName(ByVal strTemp As String) strName = strTemp End Sub Public Sub setNumber(ByVal intTemp As Integer) intNumber = intTemp End Sub Public Sub setInfo(ByVal strTemp As String) strInfo = strTemp End Sub[/code:1:a0458f335d] Ik heb ook nog een andere class, genaamd Verzameling. Deze heeft een string Name en een array van class Ding. [code:1:a0458f335d] Option Explicit Private strName As String Private aDing(1 to 10) As New Ding Public Function getDing(intIndex As Integer) As Ding Set getDing = aDing(intIndex) End Function Public Function getName() As String getName = strName End Function Public Sub setDing(intIndex As Integer, ByVal dingTemp As Ding) Set aDing(intIndex) = dingTemp End Sub Public Sub setName(ByVal strTemp As String) strName = strTemp End Sub[/code:1:a0458f335d] Nou heb ik geen flauw idee of dit zo zou werken (voor getDing en setDing), want ik kan het niet eens uittesten. Het probleem waar ik nu mee zit is namelijk het volgende: Als ik vanuit een andere class een nieuwe verzameling maak en er vervolgens een naam aan geef gaat het nog goed. Maar als ik dan een ding in de array wil zetten gaat het mis. [code:1:a0458f335d] Dim dTemp As New Ding dTemp.setName("Nieuw Ding") dTemp.setNumber(1) dTemp.setInfo("") newVerzameling.setName("nieuwe verzameling") newVerzameling.setDing(1, dTemp)[/code:1:a0458f335d] Ik krijg hier de foutmelding: Compile Error Expected: = Dit snap ik dus niet, want bij setName gaat het wel goed. Wie kan mij vertellen wat ik hier fout doe? Alvast bedankt, El Loco
Link naar reactie
je roept een sub aan met haakjes maak er: [code:1:60e9f7b2cc]newVerzameling.setDing 1, dTemp[/code:1:60e9f7b2cc] of: [code:1:60e9f7b2cc]Call newVerzameling.setDing(1, dTemp)[/code:1:60e9f7b2cc] van dat het met het aanroepen v/d andere subs goed gaat heeft te maken met het aantal argumenten, namelijk één (1), de waarde tussen de haakjes wordt dan geinterpreteerd als een te evalueren expressie, weliswaar onbedoeld (door jou) maar niet fout. bij twee (of meerdere) argumenten wordt deze (voor vb nu wel vreemde) statement natuurlijk als (syntactisch) incorrect gezien.
Link naar reactie

Om een reactie te plaatsen, moet je eerst inloggen

Gast
Reageer op dit topic

×   Geplakt als verrijkte tekst.   Herstel opmaak

  Er zijn maximaal 75 emoji toegestaan.

×   Je link werd automatisch ingevoegd.   Tonen als normale link

×   Je vorige inhoud werd hersteld.   Leeg de tekstverwerker

×   Je kunt afbeeldingen niet direct plakken. Upload of voeg afbeeldingen vanaf een URL in

×
×
  • Nieuwe aanmaken...