Frames auf TabStrip fixieren

Hallo ich habe eine Frage bezüglich eines TabStrips.

Ich will dem TabStrip mehrere Frames zuordnen, die dann, je nachdem welche Registerkarte gerade aktiviert ist, angezeigt bzw. nicht angezeigt werden.

Kann mir bitte jemand sagen, wie das am einfachsten zu bewerkstelligen ist.

Danke im Vorraus

Gruß Andreas

Hab schon gecheckt wie das geht.
Danke für alle Mühen.

Falls noch wer dieses Problem hat, ich habe es wie folgt gelöst:

Private Sub TabStrip1_Click()
If TabStrip1.SelectedItem.Index = 1 Then
Frame1.Visible = True
Frame2.Visible = False
ElseIf TabStrip1.SelectedItem.Index = 2 Then
Frame1.Visible = False
Frame2.Visible = True
End If

End Sub

Ist natürlich auf eine beliebige Anzahl von Frames erweiterbar

Gruß Andreas

Hallo Andreas.

Private Sub TabStrip1_Click()
If TabStrip1.SelectedItem.Index = 1 Then
Frame1.Visible = True
Frame2.Visible = False
ElseIf TabStrip1.SelectedItem.Index = 2 Then
Frame1.Visible = False
Frame2.Visible = True
End If

End Sub

Wenn es mehrere Frames sind, solltest Du Prüfen, ob folgender (ungeprüfter da im Browser geschriebener) Code nicht einsetzbar ist.

Mein Lösungsansatz setzt allerdings indexierte Frames vorraus, spart die aber die ganzen elseif’s.
Zudem verlängert sich dein Code pro auswählbarem Item um 3 Zeilen, mein Lösungsvorschlag bleibt gleichlang. :wink:
Funkt so aber nur wenn die Auswahl von Item x bedeutet, das Frame x sichtbar und alle anderen unsichtbar sein sollen.

For i = [erstesItem] to [letztesItem] 'Zahlen einsetzen :wink:
 Frame(TabStrip1.SelectedItem.Index).visible = true
 if i TabStrip1.SelectedItem.Index then
 Frame(i).visible = false
 endif
next i

Danke für die Hilfe.
Ich verwende aber pro Registerkarte auch mehrere Frames und kann deinen Lösungsansatz deshalb nicht verwenden

mfg Andreas

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Hallo Andreas.

Ich verwende aber pro Registerkarte auch mehrere Frames und kann deinen Lösungsansatz deshalb nicht verwenden

Du kannst den anderen Frames aber einen anderen Namen verpassen und trotzdem den selben Index benutzen. Du bräuchtest nocht nicht einmal eine ForNext-Schleife, wenn Du statt der Visible-Eigenschaft die ZOrder-Eigenschaft für die obersten Frames auf 0 setzt.
Ungefähr so:

Private Sub TabStrip1\_Click()
 Frame1(TabStrip1.SelectedItem.Index - 1).ZOrder 0
 Frame1(TabStrip1.SelectedItem.Index - 1).ZOrder 0
End Sub

Viele Grüße
Carsten