BEISPIEL
BEISPIEL
HINWEIS
Die folgenden Zeilen liefern gleichwertigen Code, um die Beschriftung der Befehlsschaltfläche
Befehl3
zu
ändern.
Befehl3.Caption = "Beenden"
Me!Befehl3.Caption = "Beenden"
Me("Befehl3").Caption = "Beenden"
Me.Controls!Befehl3.Caption = "Beenden"
Me.Controls("Befehl3").Caption = "Beenden"
Me(0)
Me.Controls(0)
Die beiden ersten Varianten (hier wird auf Controls nur implizit verwiesen) werden fast ausschließlich
praktiziert, sie sind nicht nur die einfachsten, sondern auch die schnellsten. Von den letzten beiden Varian-
ten wird abgeraten, da sich der Index (der im Beispiel auf das erste Element der Auflistung verweist) auch
ändern kann.
Etwas umständlicher gestaltet sich der Zugriff, wenn er von einem fremden Modul aus erfolgen soll.
Forms!Formular1!Befehl3.Caption = "Beenden"
Forms!Formular1.Controls!Befehl3.Caption = "Beenden"
Forms("Formular1").Controls!Befehl3.Caption = "Beenden"
Forms("Formular1").Controls("Befehl3").Caption = "Beenden"
Forms.Item("Formular1").Controls.Item("Befehl3").Caption = "Beenden"
Die letzte (wohl an Umständlichkeit kaum noch zu überbietende) Variante benutzt die ausführliche
Schreibweise mittels Item-Methode.
Collection-Objekt
Das Collection-Objekt bietet eine elegante Möglichkeit, um einzelne Objekte einer verwandten Gruppe zu-
sammenzufassen. Diese Objektennen durchaus unterschiedlichen Typs sein und müssen nur durch die
Tatsache miteinander in Beziehung stehen, dass sie sich im gleichen Collection-Objekt befinden.
Deklaration
Ein Collection-Objekt kann mit New erstellt werden, also genauso wie Form- und Report-Objekte. Nach
seiner Erstellung können dem Collection-Objekt mit der Add-Methode Elemente hinzugefügt bzw. mit der
Remove-Methode entfernt werden.
Bezüglich des Zugriffs unterscheidet sich die Programmierung von Collection-Objekten nicht von der für
Forms/Reports und Controls. So kann z.B. die gesamte Auflistung ebenfalls mit der For Each ... Next-Anweisung durchlaufen
werden.
255
Auflistungen
BEISPIEL
HINWEIS
BEISPIEL
Kapitel 5: Programmieren mit Objekten
Add-Methode
Diese Methode, die einer Collection-Auflistung ein Element hinzufügt, verwendet drei Übergabeparameter,
wovon die letzten beiden optional sind:
Objekt.Add(item [,key] [,before] [,after])
Die Argumente im Einzelnen:
Item Element, das der Auflistung hinzugefügt wird.
Key Zeichenfolgenausdruck, der anstelle eines Index verwendet werden kann.
Before Relative Position in der Auflistung vor dem mit before gekennzeichneten Element.
After Relative Position in der Auflistung nach dem mit after gekennzeichneten Element.
Die optionalen Argumente before und after müssen eine Zahl von 1 bis zum Wert der Count-Eigenschaft
der Auflistung sein.
Einem neuen
Collection
-Objekt werden ein Bezeichnungsfeld und zwei Textfelder hinzugefügt. Dabei wird
die
Add
-Methode mit
benannten Argumenten
aufgerufen.
Dim ctrlColl As New Collection
Private Sub Form_Load()
With ctrlColl
.Add Item:=Label1 ' benanntes Argument!
.Add Item:=Text1
.Add Item:=Text2
End With
End Sub
Beachten Sie, dass die hinzuzufügenden Objekte nicht neu erstellt werden, sondern bereits vorhanden sein
müssen.
Remove-Methode
Diese Methode entfernt ein Element aus einem Collection-Objekt:
Objekt.Remove(Index)
Der folgende Code entfernt das Objekt, dessen Index bei einem Schleifendurchlauf jeweils den Wert 2 hat.
Dim i As Integer
For i = 1 To ctrlColl.Count
ctrlColl.Remove 2
Next i
Die Schleife wird so oft durchlaufen, bis schließlich alle Objekte der Auflistung entfernt sind.
256

Get Microsoft Office Access 2007-Programmierung - Das Handbuch now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.