Rubrik: Controls · Sonstiges | VB-Versionen: VB4, VB5, VB6 | 05.04.01 |
TabStrip - Registerkarten deaktivieren Zugriff auf bestimmte Registerkarten - trotz fehlender Enabled-Eigenschaft - sperren. | ||
Autor: Heinz Prelle | Bewertung: | Views: 17.686 |
www.visual-basic5.de | System: Win9x, WinNT, Win2k, WinXP, Win7, Win8, Win10, Win11 | Beispielprojekt auf CD |
Es ist schon eigenartig. Da gibt es die Enabled-Eigenschaft für so gut wie alle Steuerelemente, aber nicht für die einzelnen Registerkarten eines TabStrip-Steuerelements. Zwar besitzt das TabStrip-Control die Enabled-Eigenschaft, diese bezieht sich aber immer auf das gesamte Steuerelement. Wie Sie den Zugriff auf einzelne Registerkarten dennoch "sperren", zeigt Ihnen der nachfolgende Tipp.
' aktuelle Registerkarte Dim objTab As Object ' Hilfsvariable Dim tEnabled As Boolean ' Status der Registerkarten Dim iStateOfTab() As Boolean Private Sub Form_Load() ' Anzahl Registerkarten Dim nCount As Integer nCount = TabStrip1.Tabs.Count ' Hier legen Sie fest, welche Registerkarten ' deaktiviert sein sollen ReDim iStateOfTab(nCount) iStateOfTab(1) = True iStateOfTab(2) = True iStateOfTab(3) = False ' Deaktiviert iStateOfTab(4) = True ... ' aktuelle Registerkarte tEnabled = True Set objTab = TabStrip1.Tabs(1) TabStrip1.SelectedItem = objTab End Sub Private Sub TabStrip1_Click() If Not tEnabled Then tEnabled = True Else ' Prüfen, ob "gesperrt" If iStateOfTab(TabStrip1.SelectedItem.Index) = False Then tEnabled = False Set TabStrip1.SelectedItem = objTab Else Set objTab = TabStrip1.SelectedItem End If End If End Sub