|
|
|
Aufruf von Unterformularen in sevOutbar optimieren Dieser Tipp zeigt, wie sich Unterformulare über das sevOutBar-Control mit minimalen Codeaufwand anzeigen lassen.
|
Produktversionen: | sevOutBar 2.0 |
VB-Versionen: | MS-Access |
Autor: | A. Hanft |
Datum: | 16.05.03 |
Views: | 7030 |
|
|
|
  |
|
Dieser Tipp zeigt eine Vereinfachung für das Ereignis Outbar_Click bei der Verwendung unter Access (97/2000/XP)
in Verbindung mit dem Aufruf der jeweiligen Unterformulare.
Im mitgelieferten Beispiel enthält der Code folgende geschachtelte SELECT-Anweisung, um beim Klick auf ein Outbar-Element
das jeweilige Unterformular anzuzeigen:
Private Sub OutBar1_Click(ByVal Group As Long, ByVal Item As Long)
Select Case Group
' 1. Gruppe...
Case 1
' Welches Element?
Select Case Item
Case 1 ' 1. Element
Me![Unterformular].SourceObject = "frm_Features"
Case 2 ' 2. Element
Me![Unterformular].SourceObject = "frm_Infos"
Case 3 ' 3. Element
Me![Unterformular].SourceObject = "frm_Bestellen"
' ...
End Select
' 2. Gruppe...
Case 2
' Welches Element?
Select Case Item
...
End Select
End Select
End Sub
Für jede neu hinzugefügte Gruppe oder Item müssen die SELECT-Statements erweitert werden.
Wesentlich einfacher und flexibler ist es für die Zuordnung des Dialoges die ItemTag-Eigenschaften zu benutzen.
Für jedes Item wird im Eigenschaften-Dialog neben dem Titel usw. das Feld "Tag" mit dem Namen des Dialoges belegt, der
beim Klick auf das Item aufgerufen werden soll.
Beispiel: Für den ersten Eintrag "Features" heißt wird in das Feld "Tag" frmFeatures eingetragen.
Der VBA-Code selbst vereinfacht sich dann zu einem Einzeiler!
Private Sub OutBar1_Click(ByVal Group As Long, ByVal Item As Long)
' SubForm steht im Tag
Me![Unterformular].SourceObject = OutBar1.ItemTag(Group, Item)
End Sub
Die ItemTag-Eigenschaft benötigt die Gruppe und die Nummer des gewünschten Items. Diese beiden Werte werden für das
aktuell angeklickte Item ja als Parameter zum Click-Ereignis mitgeliefert.
Auch Bei Änderungen, Ergänzungen der Gruppe, Items ist nur die ItemTag-Eigenschaft neu zu belegen. Es ist dann keine
Code-Änderungen mehr notwendig, was (wenn der Dialog schon vorhanden ist) auch das Hinzufügen/Ändern /Löschen zur Laufzeit
ermöglicht (siehe mitgeliefertes VB6 Beispiel).
Zurück zur Übersichtsseite
|