EnableToolbarButtons

DerStauner

Erfahrenes Mitglied
Hallo,

ich möchte ein kleine sub schreiben, um die verschiedenen Buttons eines Toolbars enabled zu machen.

Dazu stellte ich mir folgendes vor:

Code:
Public Sub EnableToolbarButtons(tb As Toolbar, ParamArray btn())
For i = 0 To UBound(btn)
 tb.Buttons.Item(btn(i)).Enabled = True
Next i
End Sub

Nun, mein Problem ist, dass der als Toolbar deklarierte tb keine Buttons Eigenschaften hat, und wenn ich das Sub anspreche:

Code:
EnableToolbarButtons meintoolbar, "Speichern"

bekomme ich eine Type mismatch Fehlermeldung.

Ich vermute, da ist was falsch, weil:

-wenn ich auf einem Form ein toolbar platziere, dann hat es die Buttons Eigenschaft, wenn ich im Code schreibe: meintoolbar.buttons
-und meintoolbar ist Mitglied der Toolbar Klasse, nehme ich an
-aber wenn ich per Code ein Toolbar deklariere, dann warum habe ich nicht die Eigenschaften, als wenn ich ein toolbar ped IDE erstellt hätte.

Wer kann mir da helfen?
 
Nein, lassen wir bitte ParamArray.

ich habe andere Subs, die ParamArray in der Argliste haben, und wenn ich das Sub rufe, dann genügt es einfach nur "A","B","C" zu schreiben. Und so habe ich ein Array mit 3 Elementen. Und es funktioniert.

Das Problem hier ist die Klasse Toolbar.
 
Ich hatte vor zig Jahren mal ein ähnliches Problem. Wenn ich mich richtig erinner habe ich die Klassen-Dekla gegen was generisches eingetauscht.

Code:
Public Sub EnableToolbarButtons(tb As Control, ParamArray btn())
    For i = 0 To UBound(btn)
          tb.Buttons.Item(btn(i)).Enabled = True
    Next i
End Sub
Eventuell war es auch "As Object" aber ich weiss es nicht mehr genau
 
Zurück