Warum noch ein Access-Buch?
Für wen ist das Buch?
Jetzt bestellen
+ direkter Download des eBooks!
Nur EUR 59,95!
Fehler gefunden?
Bitte melden!
Wünsche an das Buch?
Her damit!
Was denken die Leser über dieses Buch?
Lesen Sie aktuelle Rezensionen!
Kapitel des noch nicht veröffentlichten Buchs zum Downloaden, Probelesen und Kommentieren
Beispieldatenbanken
Zusätzliches Material

Das Buch im HTML-Format

Für unbestimmte Zeit bieten Addison-Wesley und André Minhorst den kompletten Inhalt des Buchs als Download an. Schauen Sie rein und informieren Sie sich über den Inhalt! Und wenn Ihnen das Buch nützlich erscheint und Sie glauben, dass Sie etwas gelernt haben oder durch das Gelesene sogar etwas Zeit und somit Geld bei Ihrer Arbeit einsparen konnten, können Sie sich ja beim Autor und beim Verlag revanchieren - beispielsweise durch den Kauf dieses Buchs.

Am schönsten wäre es natürlich, wenn Sie das Buch direkt hier bestellen - Sie erhalten das Buch dann direkt vom Verlag, und der Autor und Verlag haben dann noch mehr davon, als wenn Sie es anderswo kaufen.

Danke für Ihr Interesse!

12.6.4 Kombinationsfelder I: Das comboBox-Element

12.6.5 Kombinationsfelder II: Das dropDown-Element

Warum gibt es zwei Typen von Kombinationsfeldern und welche Unterschiede weisen diese auf? Einen genauen Einblick gibt Tabelle 12.4 - dort finden Sie einen Vergleich der Attribute der beiden Kandidaten. Die wesentlichen Unterschiede sind, dass das comboBox-Element ein onChange-Attribut und das dropDown-Element dafür die Attribute onAction, getSelectedItemID und getSelectedItemIndex enthält.

Welche Vor- und Nachteile bringt das nun? Zwischen den beiden Ereigniseigenschaften onChange und onAction an sich fällt jedenfalls kein Unterschied auf; beide werden beim Auswählen eines anderen Eintrags ausgelöst. Den Unterschied entdeckt man erst, wenn man sich die Syntax der passenden Callback-Routinen anschaut (siehe Tabelle 12.3): Während die onChange-Variante nur das Attribut label des ausgewählten Eintrags zurückliefert, wartet onAction mit den Attributen index und id auf.

Das spart natürlich Arbeit, wenn Sie ein Kombinationsfeld dynamisch mit Daten aus einer Tabelle bestücken und auf Basis der getroffenen Auswahl etwas mit den dahinter stehenden Datensätzen anfangen möchten.

Die weiteren Unterschiede beschränken sich auf zwei weitere zusätzliche Attribute des dropDown-Elements namens getSelectedItemID und getSelectedItemIndex. Beide dienen dazu, beim Anlegen des Steuerelements einen Eintrag vorauszuwählen - entweder auf Basis der ID oder des Index des Eintrags.

Das folgende Beispielelement enthält die Attribute onAction und getSelectedItemIndex:

    label="Kombinationsfeld:" getItemCount="GetItemCount"
    getItemID="GetItemID" getItemLabel="GetItemLabel"
    getItemImage="GetItemImage" onAction="OnAction"
    getSelectedItemIndex="GetSelectedItemIndex">

Die beiden Routinen, die bei onAction beziehungsweise getSelectedItemIndex ausgelöst werden, sehen wie folgt aus:

Public Sub OnAction(control As IRibbonControl, selectedId As String, _
    selectedIndex As Integer)
    MsgBox "Der ausgewählte Eintrag hat die ID '" & selectedId _
        & "' und den Index '" & selectedIndex & "'."
End Sub

Listing 12.16: Anzeigen der ID und des Index eines neu ausgewählten Eintrags eines dropDown-Steuerelements

Public Sub GetSelectedItemIndex(control As IRibbonControl, ByRef index)
    index = 3
End Sub

Listing 12.17: Festlegen eines Eintrags eines dropDown-Elements per Index-Wert (der Index ist in diesem Fall immer nullbasiert)

Sie können die Neuabfrage der Vorauswahl mit GetSelectedItemIndex übrigens auch zur Laufzeit mit der Methode invalidateControl erzwingen (siehe auch Abschnitt 12.9.1).

comboBox oder dropDown?

Diese Entscheidung ist leicht zu fällen: Bezieht das Kombinationsfeld seine Daten aus einer Tabelle und sollen Aktionen auf Basis dieser Einträge in Zusammenhang mit den zugrunde liegenden Daten ausgeführt werden oder ist eine automatische Voreinstellung notwendig, ist das dropDown-Element erste Wahl. Sollen einfach nur Texte zur Auswahl stehen und diese nach der Auswahl weiterverarbeitet werden, setzen Sie das comboBox-Steuerelement ein.

Nächster Abschnitt:

12.6.6 Umschaltflächen

© 2006-2008 André Minhorst Alle Rechte vorbehalten.