Gleiche Ereignisse im Formular und in der Klasse

20/07/2009 - 14:44 von Thomas Wolf | Report spam
Hallo NG

Wie ich getestet habe ist es möglich, im Code eines Formulares und in dem
einer Klasse für das gleiche Formular das gleiche Ereigniss ausführen zu
lassen:

Im Formular:

Private twKlasse As Klasse1

Private Sub Form_AfterUpdate()
MsgBox "Formular"
End Sub

Private Sub Form_Open(Cancel As Integer)
Set twKlasse = New Klasse1
twKlasse.start Me
End Sub

In der Klasse:

Private WithEvents pForm As Form

Public Sub start(frm As Form)
Set pForm = frm
pForm.AfterUpdate = "[Event procedure]"
End Sub

Private Sub pform_AfterUpdate()
MsgBox "Klasse"
End Sub


Dabei werden beide AfterUpdate's ausgeführt, zuerst das des Formulares, dann
das der Klasse. Ich möchte mich vergewissern, dass diese Konstellation
(gleiche Ereignisse in Form und Klasse) OK ist und keine Fallstricke
beinhaltet. Ist dem so?

Danke für Eure Antwort.
Gruss
Thomas
 

Lesen sie die antworten

#1 Mark Doerbandt
20/07/2009 - 14:57 | Warnen spam
Hallo, Thomas,

Thomas Wolf:

Wie ich getestet habe ist es möglich, im Code eines Formulares und in dem
einer Klasse für das gleiche Formular das gleiche Ereigniss ausführen zu
lassen:

Im Formular:

Private twKlasse As Klasse1

Private Sub Form_AfterUpdate()
MsgBox "Formular"
End Sub

Private Sub Form_Open(Cancel As Integer)
Set twKlasse = New Klasse1
twKlasse.start Me
End Sub

In der Klasse:

Private WithEvents pForm As Form

Public Sub start(frm As Form)
Set pForm = frm
pForm.AfterUpdate = "[Event procedure]"
End Sub

Private Sub pform_AfterUpdate()
MsgBox "Klasse"
End Sub

Dabei werden beide AfterUpdate's ausgeführt, zuerst das des Formulares, dann
das der Klasse. Ich möchte mich vergewissern, dass diese Konstellation
(gleiche Ereignisse in Form und Klasse) OK ist und keine Fallstricke
beinhaltet. Ist dem so?



ja, ich denke, das ist das normale Verhalten einer Ereigniskette. Wenn
Du Spezialitàten wie Cancel benötigst, würde ich noch mal mit dem
Debugger testen, wo das dann wirkt.

Gruss - Mark

Informationen fuer Neulinge in den Access-Newsgroups unter
http://www.doerbandt.de/Access/Newbie.htm

Bitte keine eMails auf Newsgroup-Beitràge senden.

Ähnliche fragen