Article View: be.comp.programming
Article #14294VB en klasses
From: zeno_ke
Date: Sat, 10 Mar 2001 20:02
Date: Sat, 10 Mar 2001 20:02
95 lines
3609 bytes
3609 bytes
Ben momenteel "objectgeorienteerd" aan het programmeren in VB.
Ik zit nu met het volgende probleem ... Heb enkele klassen gemaakt met
events ... dus stel BsWerknemer met een bepaalde raiseEvent .. die neem ik
dan volledig over in bijvoorbeeld TsWerknemer waarin ik ook mijn Dbase heb
gedefieneerd ... Nu wil ik in mijn form die events binnenhalen ... maar ik
kom dan het volgende tegen : Ik kan hem wel iets laten melden, via msgbox
... maar zie niet direct een manier om iets te herstarten (exit sub gaat
niet, want with event is een sub op zich)...
Misschien niet echt duidelijk ... hier enkele stukjes kode ..
BsWerknemer
Private mPostcode As Integer
Public Event VerkeerdeInvoerPostcode(msg As String)
...
...
Public Property Let Postcode(ByVal nPostcode As Integer)
If nPostcode > 999 And nPostcode < 10000 Then
mPostcode = nPostcode
Else
RaiseEvent VerkeerdeInvoerPostcode("Verkeerde invoer voor Postcode")
End If
End Property
TsWerknemer
Private WithEvents Wn As BsWerknemer
....
FrmWerknemer
Private WithEvents mWerknemer As BsWerknemer
Private WithEvents Wn As TsWerknemer
Private Sub mWerknemer_VerkeerdeInvoerPostcode(msg As String)
Lblfout.Caption = msg
TxtPost.SetFocus
End Sub
//Dit laatste werkt ... maar daar ben ik niks mee ... Hij loopt daar gewoon
overheen (msgbox ... doet idem ... geeft foutmelding, maar neemt dan inhoud
ban het eerste record, indien het niet aan de vw'en voldoet
Hierin moet ik een manier vinden om toch iets te kunnen onderbreken zodat ik
gehoor kan geven aan de foutmeldingen...
Private Sub cmdOK_Click()
Lblfout.Caption = ""
On Error GoTo UpdateError
If IsNumeric(TxtPost.Text) = False Then
Lblfout.Caption = "Gelieve een numerieke Postnummer in te geven!"
TxtPost.SetFocus
TxtPost.SelStart = 0
TxtPost.SelLength = Len(TxtPost.Text)
Exit Sub
Else
//dit werkt
With mWerknemer
.Naam = TxtNaam.Text
.VoorNaam = TxtVoornaam.Text
.Adres = TxtAdres.Text
.Woonplaats = TxtPlaats.Text
.Postcode = CInt(TxtPost.Text) //heeft ondertussen al iets in
mWerknmer.postcode gezet...
.Functie = TxtFunctie.Text
End With
End If
If toevoegvlag Then
Wn.Voegtoe
ElseIf wijzigvlag Then
Wn.wijzig
End If
Toggle (True)
Exit Sub
UpdateError:
MsgBox Err.Description
End Sub
Thx voor eventuele reacties (hoop dat ik een klein beetje duidelijk ben
geweest)
Bart
www.zenoke.web.be
Technical Details
Message-ID:
<lLvq6.13131$486.1503686@afrodite.telenet-ops.be>Path:
arc1-ca.pugleaf.net!supernews.google.com!sn-xit-03!supernews.com!cyclone2.usenetserver.com!news-out.usenetserver.com!newsfeeds.belnet.be!news.belnet.be!afrodite.telenet-ops.be!not-for-mailShow Full Headers
Complete Article Headers
X-Google-Language: DUTCH,ASCII-7-bit X-Google-Thread: 107324,adc5791d0133df44,start X-Google-Attributes: gid107324,public X-Google-Thread: fcea4,adc5791d0133df44,start X-Google-Attributes: gidfcea4,public X-Google-ArrivalTime: 2001-03-10 12:04:04 PST Path: arc1-ca.pugleaf.net!supernews.google.com!sn-xit-03!supernews.com!cyclone2.usenetserver.com!news-out.usenetserver.com!newsfeeds.belnet.be!news.belnet.be!afrodite.telenet-ops.be!not-for-mail From: "zeno_ke" <zeno_ke@hotmail.com> Newsgroups: be.comp.programming,nl.comp.programmeren Subject: VB en klasses Lines: 98 X-Priority: 3 X-MSMail-Priority: Normal X-Newsreader: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Message-ID: <lLvq6.13131$486.1503686@afrodite.telenet-ops.be> Date: Sat, 10 Mar 2001 20:02:25 GMT NNTP-Posting-Host: 213.224.76.120 X-Complaints-To: abuse@pandora.be X-Trace: afrodite.telenet-ops.be 984254545 213.224.76.120 (Sat, 10 Mar 2001 21:02:25 MET) NNTP-Posting-Date: Sat, 10 Mar 2001 21:02:25 MET Organization: Telenet Internet