Konstante Bereich
acPageFooter Seitenfuß
acGroupLevel1Header Gruppenkopf Ebene 1 (nur Berichte)
acGroupLevel1Footer Gruppenfuß Ebene 1 (nur Berichte)
acGroupLevel2Header Gruppenkopf Ebene 2 (nur Berichte)
acGroupLevel2Footer Gruppenfuß Ebene 2 (nur Berichte)
Tabelle 5.1 Konstanten für den Steuerelementebereich (Fortsetzung)
Wenn ein Bericht weitere Gruppenebenen enthält, werden die Gruppenköpfe/-füße fortlaufend numme-
riert (beginnend mit 9).
Hauptobjekt Zeichenfolgenausdruck, der den Namen des Steuerelements angibt, das dem zugeord-
neten Steuerelement übergeordnet ist (leere Zeichenfolge wenn kein Control übergeord-
net ist).
Spaltenname Name des Feldes, an welches das Steuerelement gebunden werden soll (nur bei Bound
Controls, ansonsten leere Zeichenkette).
Links, Oben Koordinaten der oberen linken Ecke des Steuerelements (in Twips).
Breite, Höhe Breite und Höhe des Steuerelements (in Twips).
Sie können ein Steuerelement mit Hilfe der Anweisungen DeleteControl und DeleteReportControl wieder aus
einem Formular oder Bericht entfernen.
Formular- und Berichtsmodule
Formular- und Berichtsmodule gehören zu den so genannten Klassenmodulen. Ein Klassenmodul repräsen-
tiert einen bestimmten Objekttyp, es kann als Vorlage (gewissermaßen als »Prägestempel«) für ein benut-
zerdefiniertes Objekt angesehen werden, welches auf einem Formular oder Bericht basiert. Innerhalb eines
Klassenmoduls können Sie Public-Prozeduren für benutzerdefinierte Methoden und Eigenschaften des
Objekttyps hinzufügen.
Außerdem gibt es auch Eigenständige Klassenmodule, die nicht an ein Formular oder an einen Bericht
gebunden sind.
Instanzen von Formularen und Berichten
Wenn Sie ein Formular in der Formularansicht öffnen (direkt von der Entwicklungsumgebung aus oder
aber auch per VBA-Code), erstellen Sie eine Instanz dieses Formulars. Erst diese Instanz ist das eigentliche
Objekt! Das Gleiche gilt entsprechend, wenn Sie einen Bericht in der Seitenansicht öffnen.
Standard- und Nicht-Standardinstanzen
Normalerweise arbeiten Sie nur mit einer Instanz des Formulars, der so genannten Standardinstanz. Ein
Formular hat nur eine einzige Standardinstanz, die automatisch vorhanden ist, wenn Sie das Formular
245
Formular- und Berichtsmodule
HINWEIS
BEISPIEL
HINWEIS
BEISPIEL
Kapitel 5: Programmieren mit Objekten
öffnen. Sie könnten aber auch mehrere Instanzen ein- und desselben Formulars erstellen. Diese Kopien
sind dann Nicht-Standardinstanzen und dürften für Sie dann von Interesse sein, wenn Sie z.B. verschiedene
Datensätze desselben Formulars gleichzeitig anzeigen bzw. bearbeiten wollen.
Eine Einführung in diese Problematik liefert das Praxisbeispiel »Mit Formular-Instanzen arbeiten« (Seite 280).
Wenden wir uns zunächst der Bildung von Standardinstanzen zu: Generell bestehen zwei Möglichkeiten,
die Standardinstanz eines Formulars bzw. Berichts per Code zu erzeugen:
Ausführen der OpenForm(OpenReport)-Methode des DoCmd-Objekts.
Aufruf der CreateForm(CreateReport)-Funktion und Wechseln in die Formularansicht für das neue
Formular.
Für das Erzeugen von Nicht-Standardinstanzen eignet sich keine der beiden Möglichkeiten. Wir müssen
dazu Klassenmodule im Zusammenspiel mit der New-Anweisung verwenden:
New-Anweisung
Die einfachste Möglichkeit zur Deklaration von Nicht-Standardinstanzen ist die Variablendeklaration mit
dem Schlüsselwort New.
Der folgende Code erstellt eine neue Nicht-Standardinstanz des Formulars
Personal
und weist dieser eine
Variable des Typs
Form
zu.
Dim frm As New Form_Personal
frm.Visible = True
Eine Nicht-Standardinstanz des Formulars ist erst dann sichtbar, wenn deren Visible-Eigenschaft auf True
eingestellt wird. Auch alle weiteren Eigenschaften beeinflussen diese Instanz des Formulars, werden aber nicht mit dem
Formular gespeichert.
Kopieren Sie in ein Form-Modul (
Formular2
) folgenden Code:
Dim obj1 As New Form_Formular1
Dim obj2 As New Form_Formular1
Private Sub Form_Load()
obj1.Visible = True
obj2.Visible = True
End Sub
Wir setzen dabei voraus, dass in der Datenbank bereits ein (nicht geöffnetes!) Form-Objekt namens
Formular1 existiert. Wenn Sie Formular2 öffnen, werden gleichzeitig auch zwei Nicht-Standardinstanzen
von Formular1 geöffnet. Mit dem Schließen von Formular2 verschwinden diese wieder. Umgekehrt gilt dies
nicht, denn mit dem Schließen einer oder beider Instanz(en) von Formular1 bleibt Formular1 (die Stan-
dardinstanz) erhalten.
246

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.