Zoomfenster im Eigenbau

Wenn Benutzer in Access längere Inhalte von Textfeldern editieren, hilft das Zoomfenster oft weiter. Es zeigt den Inhalt in einem meist größeren Steuerelement und erlaubt das Einstellen der Schriftart und -größe. Es hat allerdings zwei Nachteile: Man kann seine Größe nicht anpassen und außerdem ist es nicht in der Runtime von Access 2007 verfügbar. Zwei Gründe, ein eigenes Zoomfenster zu bauen.

Das gravierendste Problem des originalen Zoomfensters von Access (s. Abb. 1) ist wohl seine beharrliche Weigerung, sich dem Benutzer unter Access 2007 zu zeigen. Das Zoomfenster befindet sich unter Access 2007 in der Datenbank Utility.accda, auf die Access-Anwendungen unter der Runtime aus unbekannten Gründen nicht zugreifen können.

pic001.tif

Abb. 1: Das Zoomfenster von Access

Das bezieht sich ausschließlich auf Systeme, auf denen die Runtime-Version tatsächlich installiert ist. Die Aussage, man könne die Runtime-Version einer Datenbank unter Access 2007 ganz einfach testen, indem man ihre Dateiendung in .accdr ändert, stimmt daher nicht ganz: Immerhin funktioniert dies, wenn die Vollversion auf dem betreffenden System installiert ist.

Gelegentlich möchte man das Zoomfenster vielleicht auch mal größer ziehen, um etwa bestimmte Texte im ursprünglichen Umbruch lesen zu können – dies würde zum Beispiel für Listings Sinn machen.

Sollten Sie aus irgendeinem der genannten Gründe mit dem eingebauten Zoomfenster nicht mehrzufrieden sein, bauen Sie sich halt ein neues.

Dazu brauchen Sie ein einfaches Formular, welches das Zoomfenster nachbildet, ein Makro namens Autokeys zum Abfangen der Tastenkombination Umschalt + F2 sowie ein wenig Code, der den aktuellen Steuerelementinhalt ausliest und diesen später zurückschreibt.

Formular für das Zoomfenster

Das Formular sollte in der Größe skalierbar sein sowie das Anpassen der Schriftgröße und der Schriftart erlauben. Dazu rufen Sie den entsprechenden Systemdialog auf.

Zunächst bauen Sie das Formular mit den enthaltenen Steuerelementen nach: Dazu benötigen Sie ein großes Textfeld und drei Schaltflächen, die Sie mit txtZoom, cmdOK, cmdAbbrechen und cmdSchriftart benennen. Die Steuerelemente ordnen Sie wie in Abb. 2 an.

pic002.tif

Abb. 2: Das nachgebaute Zoomfenster in der Entwurfsansicht

Stellen Sie die Formulareigenschaften Bildlaufleisten, Datensatzmarkierer, Navigationsschaltflächen und Trennlinien auf Nein ein.

Kümmern Sie sich dann zunächst um das Anpassen der Größe. Dies erledigen Sie mit einer Prozedur, die durch die Ereigniseigenschaft Bei Größenänderung ausgelöst wird (s. Listing 1).

Listing 1: Anpassen der Größe und Position der Steuerelemente beim ändern der Formulargröße

Private Sub Form_Resize()
    Const cRand As Integer = 100
    Dim i As Integer
    With Me!txtZoom
        .Left = cRand
        .Width = Me.InsideWidth - 3 * cRand - Me.cmdOK.Width
        .Height = Me.InsideHeight - 2 * cRand - 10
        .Top = cRand
    End With
    With Me.cmdOK
        .Left = Me.InsideWidth - cRand - .Width
        .Top = cRand
    End With
    With Me.cmdAbbrechen
        .Left = Me.InsideWidth - cRand - .Width
        .Top = Me.cmdOK.Height + 2 * cRand
    End With
    With Me.cmdSchriftart
        .Left = Me.InsideWidth - cRand - .Width
        .Top = 0
        .Top = (Me.InsideHeight - cRand - .Height - 5)
    End With
End Sub

Zoom-Funktion

Bevor wir uns an die Funktionen der einzelnen Schaltflächen wagen, sind ein paar Gedanken über die Vorgehensweise angebracht. Wie ruft man das Zoomfenster überhaupt auf Wir haben es bereits angedeutet: Die Tastenkombination Umschalt + F2 soll durch ein Tastaturmakro abgefangen werden. Doch was macht das Makro dann Am besten zuerst mal eine VBA-Funktion aufrufen. Von dort aus programmiert es sich doch viel leichter. Diese nennen wir ShowZoom, dementsprechend sieht das Makro aus wie in Abb. 3.

pic003.tif

Abb. 3: Das Tastaturmakro in der Entwurfsansicht

Sie haben das Ende des frei verfügbaren Textes erreicht. Möchten Sie ...

Workplace

Jahresabonnement TestzugangOder haben Sie bereits Zugangsdaten? Dann loggen Sie sich gleich hier ein:

Schreibe einen Kommentar