Zur Hauptseite ... Zum Onlinearchiv ... Zum Abonnement ... Zum Newsletter ... Zu den Tools ... Zum Impressum ... Zum Login ...

Unser Angebot für Sie!

Lesen Sie diesen Beitrag und 500 andere sofort im Onlinearchiv, und erhalten Sie alle zwei Monate brandheißes Access-Know-how auf 72 gedruckten Seiten! Plus attraktive Präsente, zum Beispiel das bald erscheinende Buch 'Access 2010 - Das Grundlagenbuch für Entwickler'!

Diesen Beitrag twittern

Ihren XING-Kontakten zeigen

Diesen Beitrag Ihrem XING-Kontakten vorstellen

Diesen Beitrag auf Facebook teilen

Verwandte Beiträge:

Access-FAQ: Rund um Access

Zugriff auf Daten in Formularen und Steuerelementen

Ereignisprozeduren

TreeView-Konfigurator

Das Register-Steuerelement

Alle verwandten Beiträge ansehen ...

Bisherige Kommentare:

Noch keine Kommentare vorhanden.

Alle Kommentare ansehen oder Kommentar abgeben

Über den Autor:

André Minhorst

Bitte nutzen Sie das XING-Profil nicht
für Fragen zum Artikel, sondern nur für
den Kontaktaustausch beziehungsweise
Projekt- oder Supportanfragen.

Zusammenfassung

Erfahren Sie, wie Sie das Registersteuerelement einsetzen und was Sie alles damit anfangen können.

Techniken

Formulare, Registersteuerelement, VBA

Voraussetzungen

Access 2000 und höher

Beispieldateien

Registersteuerelement.mdb

Shortlink

www.access-im-unternehmen.de/699

Registersteuerelemente von A-Z

André Minhorst, Duisburg

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 (s. Abb. 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

Abb. 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 (s. Abb. 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

Abb. 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 (s. Abb. 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 (s. Abb. 4).

pic003.png

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

pic004.png

Abb. 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 Abb. 5 schwarz ein. Klicken Sie zu diesem Zeitpunkt mit der Maus, wird das Steuerelement auf der aktuellen Registerseite angelegt.

pic005.png

Abb. 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 Abb. 6 aus.

pic006.png

Abb. 6: Ein Registersteuerelement im Registersteuerelement - ein Unterformular macht's möglich

Per VBA auf Registersteuerelemente zugreifen

Früher oder später werden Sie Registersteuerelemente per VBA steuern, etwa um auf benutzergesteuerte Seitenwechsel zu reagieren. Ein gutes Beispiel ist der bereits oben erwähnte Assistent, dessen Zurück- und Weiter-Schaltflächen je nach der aktuell ausgewählten Seite aktiviert oder deaktiviert werden sollen.

Zunächst jedoch schauen wir uns an, wie wir grundsätzlich auf die Elemente eines Registersteuerelements zugreifen können. Davon ausgehend, dass der Zugriff vom Klassenmodul des Formulars ausgeht, in dem sich das Steuerelement befindet, referenzieren Sie dieses mit folgender Anweisung:

Me!<Registersteuerelementname>

Lassen Sie uns beim Laden des Formulars einige Informationen über das Registersteuerelement und die enthaltenen Seiten ausgeben. Dazu legen wir eine Ereignisprozedur an, die durch das Ereignis Beim Laden ausgelöst wird. Fügen Sie dieser Eigenschaft des Formularentwurfs im Eigenschaftsfenster den Wert [Ereignisprozedur] hinzu und klicken Sie auf die Schaltfläche mit den drei Punkten (...) neben der entsprechenden Eigenschaft. Im nun erscheinenden VBA-Editor ergänzen Sie die frisch angelegte Ereignisprozedur mit folgenden Codezeilen:

Private Sub Form_Load()

    Debug.Print Me!tabBeispiel.Name

    Debug.Print Me!tabBeispiel.Pages.Count

End Sub

Dies gibt beim Öffnen des Formulars den Namen des Registersteuerelements und die Anzahl der enthaltenen Registerseiten aus. Schauen wir uns nun die einzelnen Registerseiten an. Die Pages-Auflistung, mit deren Count-Eigenschaft wir oben bereits die Anzahl der enthaltenen Seiten ermittelt haben, bietet über die Items-Eigenschaft Zugriff auf alle enthaltenen Page-Objekte. Wenn Sie Informationen zu einer bestimmten Seite erhalten möchten, können Sie dies etwa so erreichen:

Debug.Print Me!tabBeispiel.Pages.Item(0).Caption

Die Zahl 0 entspricht dabei dem Index des Item-Elements. Auf ein Page-Objekt können Sie auch über den Steuerelementnamen zugreifen, also beispielsweise pgeSeite1:

Debug.Print Me!tabBeispiel.Pages.Item("pgeSeite1").Caption

Falls Sie Informationen über alle Page-Elemente eines Registersteuerelements benötigen oder diese aus anderen Gründen per VBA durchlaufen möchten, gelingt dies am besten über eine entsprechende Objektvariable, die Sie wie folgt deklarieren:

Dim objPage As Page

Die folgende For Each-Schleife durchläuft alle Elemente der Pages-Auflistung und füllt objPage jeweils mit einem Verweis auf die aktuelle Seite. Innerhalb der Schleife gibt die Prozedur die Beschriftung, den Index und den Visible-Zustand im Direktfenster aus:

For Each objPage In Me!tabBeispiel.Pages

    Debug.Print objPage.Caption,

    objPage.PageIndex, objPage.Visible

Next objPage

Reihenfolge der Tabs zur Laufzeit ändern

Der PageIndex gibt unter anderem die Reihenfolge der Page-Elemente im Registersteuerelement an. Diesen können Sie zur Laufzeit ändern. Um diesen Effekt direkt betrachten zu können, positionieren Sie das Access-Fenster und den VBA-Editor nebeneinander, öffnen das Formular mit dem Registersteuerelement und setzen dann folgende Anweisung im Direktfenster ab:

Forms!frmRegister!tabBeispiel.Pages.Item(1).PageIndex = 0

Dies vertauscht die Seite mit dem PageIndex 0 mit der Seite mit PageIndex 1. Generell gilt die Regel, dass der PageIndex aller Seiten, deren PageIndex größer ist als der PageIndex der Seite, deren PageIndex geändert wird, um eins in Richtung des PageIndexes der geänderten Seite rutscht.

PageIndex der aktuellen Seite ermitteln

Sie werden vermutlich auf die Anforderung treffen, dass Sie zu einem bestimmten Zeitpunkt ermitteln müssen, welche Seite des Registersteuerelements aktuell angezeigt wird. Das ist außerordentlich einfach: Sie brauchen nur den Wert des Registersteuerelements zu ermitteln. Und das geht so:

Debug.Print Forms!frmRegister!tabBeispiel.Value

Möglicherweise kennen Sie dies schon von der Optionsgruppe: Statt eines PageIndexes enthält dort jede Option einen Optionswert, wobei der Wert der aktuell markierten Option als Wert des Optionsgruppen-Steuerelements ausgelesen werden kann. Vom PageIndex aus ermitteln wir gleich noch den Namen der ausgewählten Seite:

Debug.Print Forms!frmRegister!tabBeispiel.Pages(Forms!frmRegister!tabBeispiel.Value).Name

Seiten zur Laufzeit zum Registersteuerelement hinzufügen

Was bei den meisten Steuerelementen etwas aufwendiger ist, gelingt beim Registersteuerelement ganz leicht: Sie können ihm in der Entwurfsansicht leicht per VBA-Code weitere Seiten hinzufügen und diese auch wieder entfernen.

Als Beispiel verwenden wir die Artikel und Kategorien der Südsturm-Datenbank. Fügen Sie einem leeren Formular ein Registersteuerelement hinzu und nennen Sie es tabArtikel. Stellen Sie seine Eigenschaft Mehrere Zeilen auf Ja ein. Das Registersteuerelement soll für jede Kategorie der Tabelle tblKategorien einen Registerreiter erhalten. Später soll ein Unterformular die zur aktuellen Kategorie gehörenden Artikel anzeigen.

Die einzelnen Registerseiten sollen Sie nun nicht von Hand anlegen, sondern per VBA-Code - und zwar in der Entwurfsansicht. Dies erledigt die Prozedur aus Listing 1 (in der Beispieldatenbank im Modul mdlRegister zu finden). Die Routine füllt zunächst eine Variable des Typs TabControl mit einem Verweis auf das Registersteuerelement des Formulars in der Entwurfsansicht (befindet sich das Formular nicht in der Entwurfsansicht, wird weiter unten ein Fehler ausgelöst).

Listing 2: Speichern von Anlagen im Dateisystem

Public Sub KategorieseitenAnlegen()

    Dim db As DAO.Database

    Dim rst As DAO.Recordset

    Dim objTabControl As TabControl

    Dim lngKategorien As Long

    Dim i As Integer

    Set objTabControl = Forms!frmArtikelNachKategorien.tabKategorien

    Set db = CurrentDb

    Set rst = db.OpenRecordset("SELECT KategorieID, Kategoriename FROM tblKategorien " _

        & "ORDER BY Kategoriename", dbOpenDynaset)

    rst.MoveLast

    rst.MoveFirst

    lngKategorien = rst.RecordCount

    Do While objTabControl.Pages.Count > lngKategorien

         objTabControl.Pages.Remove objTabControl.Pages.Count - 1

    Loop

    Do While objTabControl.Pages.Count < lngKategorien

         objTabControl.Pages.Add 0

    Loop

    Do While Not rst.EOF

        objTabControl.Pages.Item(i).Caption = rst!Kategoriename

        objTabControl.Pages.Item(i).Name = "pge" & rst!KategorieID

        i = i + 1

        rst.MoveNext

    Loop

End Sub

Dann öffnet die Prozedur eine Datensatzgruppe und füllt diese mit den Datensätzen der Tabelle tblKategorien, wobei nur die Felder KategorieID und Kategoriename berücksichtigt werden. Nach der Ermittlung der Anzahl der enthaltenen Datensätze werden drei Do While-Schleifen durchlaufen. Die erste prüft jeweils, ob die Anzahl der im Registersteuerelement enthaltenen Page-Objekte größer ist als die Anzahl der Datensätze im Recordset. Falls ja, wird jeweils ein Page-Objekt gelöscht - bis schließlich genau ein Page-Objekt je Datensatz vorliegt. Gegebenenfalls enthält das Registersteuerelement beim Aufruf der Prozedur weniger Page-Elemente als benötigt. In dem Fall füllt die zweite Schleife die Page-Elemente auf.

Fehlt noch die dritte Do While-Schleife: Diese ändert beim Durchlaufen der Datensätze der Tabelle tblKategorien die Eigenschaften der vorhandenen Page-Elemente, indem sie die Beschriftung auf den Wert des Feldes Kategoriename und den Namen auf die Zeichenkette pge plus der KategorieID des aktuellen Datensatzes einstellt. Das Ergebnis sieht nun, egal wie das Registersteuerelement zuvor beschaffen war, wie in Abb. 7 aus.

pic007.png

Abb. 7: Registersteuerelement mit einer Seite je Kategorie der Kategorien-Tabelle

Nun soll noch ein Unterformular die Artikel für die aktuell ausgewählte Registerseite beziehungsweise Kategorie anzeigen. Fügen wir also zunächst jeder Seite des Registersteuerelements ein Unterformular hinzu ... oder doch nicht? Nein: Wir legen das Unterformular einfach über das Registersteuerelement - genau, wie es weiter oben bereits einmal beschrieben wurde! Die Daten sollen ohnehin immer an der gleichen Position angezeigt werden, egal, welche Kategorie der Benutzer nun über die Registerreiter ausgewählt hat.

Erstellen Sie also ein Unterformular namens sfmArtikelNachKategorien und fügen Sie diesem als Datenherkunft die Tabelle tblArtikel hinzu. Ziehen Sie alle gewünschten Felder in den Detailbereich und stellen Sie die Standardansicht auf Datenblatt ein. Speichern Sie das Unterformular und schließen Sie es. Ziehen Sie es nun vom Datenbankfenster beziehungsweise aus dem Navigationsbereich in den Entwurf des Formulars frmArtikelNachKategorien. Verschieben Sie es dann so über das Registersteuerelement, dass es so aussieht, als ob es in einer Seite des Registersteuerelements angezeigt würde.

Ereignisse des Registersteuerelements

Praktischerweise können wir hier sehr schön die Ereigniseigenschaft Bei Änderung des Registersteuerelements vorführen. Hinterlegen Sie für dieses Ereignis die folgende Prozedur:

Private Sub tabKategorien_Change()

    ArtikelFiltern

End Sub

Die einzige Anweisung ruft eine weitere Prozedur auf, die so aussieht:

Private Sub ArtikelFiltern()

    Dim lngKategorieID As Long

    lngKategorieID = Mid(Me.tabKategorien.

    Pages(Me.tabKategorien.Value).Name, 4)

    With Me.sfmArtikelNachKategorien.Form

    .Filter = "KategorieID = "

    & lngKategorieID

    .FilterOn = True

    End With

End Sub

Diese Prozedur liest über Me.tabKategorien.Value den PageIndex der aktuellen Seite aus und ermittelt für die Seite mit diesem Index den Namen, der zum Beispiel pge5 lautet. Die Mid-Funktion filtert hier die 5 heraus, die dem Primärschlüsselwert der gewählten Kategorie entspricht. Mit diesem Wert filtern wir die Datenherkunft des Unterformulars, welches daraufhin die Artikel der ausgewählten Kategorie anzeigt (s. Abb. 8).

pic008.png

Abb. 8: Das Registersteuerelement als Werkzeug zum Filtern eines Unterformulars

Zusammenfassung und Ausblick

Das Registersteuerelement ist sehr nützlich, wenn es um das Strukturieren vieler Steuerelemente geht. In diesem Beitrag haben Sie unter anderem erfahren, wie Sie es mit Steuerelementen bestücken und es per VBA steuern und auf seine Ereignisse reagieren.

Aber es gibt noch mehr: Sie könnten ein Registersteuerelement mit ausgeblendeten Registerreitern auch komplett zweckentfremden, indem Sie es nur mit einer einzigen Registerseite ausstatten und dieses zum Gruppieren von Steuerelementen verwenden. Diese können Sie dann, unabhängig von den anderen Steuerelementen, nur durch Verschieben des Registersteuerelements an einer anderen Stelle positionieren. Auf die Steuerelemente können Sie so wie gewohnt zugreifen: Sie befinden sich technisch gesehen immer noch direkt auf dem Formular.

Auch für Assistenten lässt sich das registerreiterlose Registersteuerelement hervorragend einsetzen. Wie dies funktioniert, erfahren Sie in einer Lösung in einer der folgenden Ausgaben von Access im Unternehmen.

Download

Download

Die .zip-Datei enthält folgende Dateien (.mdb-Dateien mit '00' im Dateinamen funktionieren in Access 2000 und höher):

Registersteuerelement.mdb

Beispieldateien downloaden

Verwandte Beiträge:

Access-FAQ: Rund um Access

Zugriff auf Daten in Formularen und Steuerelementen

Ereignisprozeduren

TreeView-Konfigurator

Das Register-Steuerelement

Alphabetisches Register

Ereignisprozeduren implantieren

Das Optionsgruppen-Steuerelement

Access 2007: Bilder und Schaltflächen

TreeView-Elemente im Griff

Ereignisse im Eigenbau

Tipps und Tricks

Flexible Datumstextfelder

Auswahlfelder im Ribbon

Steuerelemente zur Laufzeit verschieben

Das Append-Only-Memofeld

Listenfeld und Details in einem Formular

HTML-Editor-Steuerelement

Mehrsprachige Anwendungen

Unterformulare im Gleichschritt

Listenfelder von A-Z

Kommentare und Ergänzungen

Wenn Sie Kommentare, Fragen oder Ergänzungen zu diesem Artikel haben, können Sie diese hier eintragen. Wir bemühen uns, kurzfristig auf Ihren Kommentar einzugehen.

Ihr Name:

Ihre E-Mail-Adresse (für
Rückfragen, wird nicht veröffentlicht:

Betreff:

Ihr Kommentar zu diesem Artikel:

© 2003-2010 André Minhorst Alle Rechte vorbehalten.