Registersteuerelemente von A-Z

Das Registersteuerelement ist ein probates Mittel, überfüllte Formulare zu entschlacken und Eingabesteuerelemente zu strukturieren. Wir zeigen Ihnen, wie Sie das Registersteuerelement einsetzen, wie Sie auf die Ereignisse reagieren, die das Steuerelement etwa beim Wechseln der Registerseite auslöst, und wie Sie ihm ein ganz anderes Aussehen als gewohnt geben.

Das Registersteuerelement fällt in erster Linie durch die Registerlaschen auf, über die der Benutzer per Mausklick die einzelnen Registerseiten aufrufen kann. Ein Registersteuerelement fügen Sie wie jedes andere eingebaute Steuerelement über den entsprechenden Eintrag der Werkzeug-Symbolleiste (bis Access 2003) beziehungsweise den entsprechenden Ribbon-Eintrag zu einem Formular hinzu. Dazu klicken Sie den jeweiligen Eintrag an und ziehen dann im Formularentwurf einen Rahmen in der gewünschten Größe auf.

Markieren der einzelnen Registersteuerelement-Bestandteile

Auch wenn dies trivial erscheint: Es ist zumindest für Einsteiger gar nicht so einfach, das komplette Registersteuerelement oder eine der Registerseiten zu markieren. Wenn Sie einfach in die aktuell angezeigte Registerseite klicken, geschieht gar nichts: Sofern Sie nicht gerade ein auf der Registerseite enthaltenes Steuerelement anklicken, meldet das Eigenschaftsfenster, dass aktuell der Detailbereich des Formulars markiert ist. Erst ein Klick auf einen der Registerreiter markiert die entsprechende Registerseite. Das Registersteuerelement selbst markieren Sie, indem Sie entweder, soweit vorhanden, auf den freien Bereich rechts neben der letzten Registerlasche klicken oder indem Sie an einer leeren Stelle im Detailbereich beginnend einen Rahmen aufziehen, der über dem Registersteuerelement endet. Auch hier erkennen Sie am besten im Eigenschaftsfenster, welches Steuerelement aktuell markiert ist.

Hinzufügen und Entfernen von Registerseiten

Wenn Sie dem Registersteuerelement eine Seite hinzufügen möchten, gelingt dies am schnellsten über das Kontextmenü des Steuerelements selbst. Markieren Sie das Steuerelement wie oben angegeben und klicken Sie auf die rechte Maustaste, können Sie aus dem Kontextmenü den Eintrag Seite einfügen auswählen (siehe Bild 1). Eine vorhandene Registerseite entfernen Sie, indem Sie diese zuerst markieren und dann den Eintrag Seite löschen aus dem entsprechenden Kontextmenü auswählen.

pic001.png

Bild 1: Über das Kontextmenü des Registersteuerelements fügen Sie Seiten hinzu oder entfernen diese.

Reihenfolge der Registerseiten einstellen

Ein weiterer Eintrag des Kontextmenüs öffnet den Dialog Seitenreihenfolge (siehe Bild 2). Mit diesem Dialog können Sie die Reihenfolge einstellen, indem Sie den zu verschiebenden Eintrag markieren und diesen mit den beiden Schaltflächen Nach oben oder Nach unten verschieben.

pic002.png

Bild 2: Einstellung der Reihenfolge der Registerreiter

Wichtige Eigenschaften von Registersteuerelementen

Wie jedem anderen Steuerelement auch, sollten Sie die Name-Eigenschaft des Registersteuerelements auf einen Wert einstellen, der mit dem entsprechenden Präfix beginnt – zum Beispiel tabBeispiel. Wenn Sie per VBA auf die einzelnen Seiten zugreifen möchten, sollten Sie auch diesen entsprechende Namen geben. Hier können Sie etwa das Präfix pge (für Page) verwenden: pgeErsteSeite, pgeZweiteSeite. Wichtig ist auch die Überschrift: Mit der Eigenschaft Beschriftung (unter VBA: Caption) stellen Sie den im Registerreiter angezeigten Text ein. Genau genommen sollten Sie unbedingt eine Überschrift einstellen, denn sonst zeigt das Registersteuerelement den Namen der Seite als Beschriftung an.

Zeilenweise

Wenn das Registersteuerelement mehr Registerseiten enthält, als es Registerreiter anzeigen kann, erscheinen am rechten Rand zwei Schaltflächen, mit denen der Benutzer nach links oder rechts blättern kann (siehe Bild 3). In diesem Fall können Sie durch Einstellen der Eigenschaft Mehrere Zeilen (VBA: MultiRow) auf den Wert Ja erreichen, dass die Registerreiter auf mehrere Zeilen verteilt werden (siehe Bild 4).

pic003.png

Bild 3: Die einzeilige Darstellung der Registerreiter reicht manchmal nicht aus.

pic004.png

Bild 4: Registersteuerelement mit mehrspaltigem Register

Wenn Sie sehr viele Registerseiten verwenden, könnte der Platz im Registersteuerelement ein wenig eng werden. Dem können Sie mit den beiden Eigenschaften Feste Registerbreite (TabFixedHeight) und Feste Registerhöhe (TabFixedWidth) abhelfen: Legen Sie alle Beschriftungen an, ermitteln Sie die maximal notwendige Breite und stellen Sie diese als Wert der Eigenschaft Feste Registerbreite ein. Zusätzlich lässt sich auch noch über eine kleinere Schriftart und/oder eine geringere Zeilenhöhe (Eigenschaft Feste Registerhöhe) zusätzlicher Platz gewinnen.

Schaltflächen statt Registerreiter

Wenn Ihnen Schaltflächen optisch eher zusagen als Registerreiter, stellen Sie die Eigenschaft Formatvorlage auf Schaltflächen statt auf Register ein. Unter der Kombination Windows XP/Access 2007 macht dies allerdings kaum einen Unterschied, unter Access 2003 schon eher.

Sie können auch die Eigenschaft Formatvorlage auf den Wert Keine einstellen – die Registerreiter verschwinden dann vollständig. Auch dann noch ist das Registersteuerelement sinnvoll einsetzbar: Stellen Sie sich vor, Sie würden einen Assistenten etwa zum Anlegen von Kundendaten in mehreren Schritten programmieren. Sie könnten dann alle notwendigen Steuerelemente auf die einzelnen Registerseiten aufteilen und die jeweils benötigten durch einen programmatischen Wechsel der Registerseite anzeigen. Der Anwender könnte dann über Schaltflächen mit der Beschriftung Vorwärts und Rückwärts zwischen den einzelnen Stationen des Assistenten hin- und herwechseln.

Registerseiten ein- und ausblenden

Jede Registerseite kann im Entwurf über die Eigenschaft Sichtbar ein- und ausgeblendet werden, zur Laufzeit erledigen Sie dies mit der Eigenschaft Visible.

Bilder auf Registerreitern

Sie können jeden Registerreiter mit einem eigenen Bild ausstatten. Dazu wählen Sie über die Eigenschaft Bild die entsprechende Bilddatei aus. In unseren Versuchen funktionierte dies jedoch ausschließlich mit .bmp-Dateien. Diese enthalten jedoch keinen transparenten Hintergrund, sodass beim Wechseln der Registerseite und der damit verbundenen farblichen Hervorhebung der aktiven Seite unschöne Effekte entstehen. Bilder in Registerreitern sind aber ohnehin eher ungewöhnlich und in der freien Wildbahn kaum anzutreffen.

Steuerelemente auf Registerseiten platzieren

Das Platzieren eines Steuerelements auf einer Registerseite geschieht in der Regel wie bei einer Optionsgruppe. Klicken Sie die Schaltfläche für das einzufügende Element an und fahren Sie dann mit der Maus über die Zielseite des Registersteuerelements. Dieses färbt sich dann wie in Bild 5 schwarz ein. Klicken Sie zu diesem Zeitpunkt mit der Maus, wird das Steuerelement auf der aktuellen Registerseite angelegt.

pic005.png

Bild 5: Einfügen eines Steuerelements auf einer Registerseite

Wenn Sie ein Steuerelement auf einer anderen Registerseite anlegen möchten, müssen Sie diese zuvor zur aktuellen Registerseite machen. Dies können Sie allerdings auch erledigen, während Sie das anzulegende Steuerelement schon “geladen” haben – auf den Registerreitern lassen sich nämlich keine Steuerelemente ablegen.

Steuerelemente über den Registerseiten platzieren

Gegebenenfalls soll ein Steuerelement auf allen Seiten des Registersteuerelements erscheinen. Sie brauchen es dann nicht auf jeder Registerseite separat anzulegen, sondern platzieren es einfach über dem Registersteuerelement selbst. Das will natürlich nicht so einfach gelingen, denn schließlich färbt dieses beim Überfahren mit der Maus immer gleich die aktuelle Registerseite ein, um es als Ziel zu markieren. Daher gehen wir einen Umweg: Lassen Sie das Steuerelement einfach neben dem Registersteuerelement fallen und verschieben Sie es dann über das Registersteuerelement. Egal, welche Registerseite Sie anschließend aufrufen – ein oberhalb des Registersteuerelements platziertes anderes Steuerelement bleibt immer sichtbar. Und wenn ein solches Steuerelement nur auf fast allen Registerseiten sichtbar sein soll, blenden Sie es eben zur Laufzeit mit der Visible-Eigenschaft ein und aus. Für Steuerelemente, die auf jeder Registerseite die gleiche Funktion anbieten, ist das ohnehin die sinnvollste Lösung.

Register im Register

Manchmal soll es vorkommen, dass Benutzer nach einem Register im Register verlangen. Leider ist es nicht möglich, ein Registersteuerelement direkt auf einer Registerseite abzulegen. Die Betonung liegt hier auf “direkt”, denn über einen Umweg fügen Sie das Registersteuerelement doch noch auf einer Registerseite ein. Der Trick ist, dass Sie der betroffenen Registerseite ein Unterformular unterjubeln, das seinerseits das weitere Registersteuerelement enthält.

Wenn Sie dies vorhaben, erstellen Sie zunächst ein Unterformular und fügen diesem das untergeordnete Registersteuerelement hinzu. Verkleinern Sie den Detailbereich des Unterformulars bis auf die Größe des Registersteuerelements, damit sich dieses nahtlos in die übergeordnete Registerseite einfügt. Das Ergebnis sieht – ohne jegliche Schönheitsoperation – wie in Bild 6 aus.

pic006.png

Ende des frei verfügbaren Teil. Wenn Du mehr lesen möchtest, hole Dir ...

den kompletten Artikel im PDF-Format mit Beispieldatenbank

diesen und alle anderen Artikel mit dem Jahresabo

Schreibe einen Kommentar