🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: be.comp.programming
Article #14294

VB en klasses

#14294
From: zeno_ke
Date: Sat, 10 Mar 2001 20:02
95 lines
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-mail

Show 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