FM20 – ToggleButton
ToggleButton to kontrolka ActiveX z zestawu biblioteki FM20 (standardowy przybornik) dla kompilacji Office 32/64 bit.
Kontrolka Toggle to tak naprawdę inna postać CheckBoxa. Która akurat w VBA przybiera postać przycisku. W późniejszych systemach jest to własnie check, z parametrem zmiany wyglądu. Niemniej jednak omawiamy kontrolki w środowisku Office, a więc oto ta kontrolka:
Rysując przycisk otrzymujemy jego cechy (a więc, wywołanie skrótem z parametru Accelerator, możliwość naniesienia nazwy Caption, rysunku Picture i ich położenia względem siebie PicturePosition). Te jednak sprawy opisałem już w poprzednich artykułach.
Na czym można by się w takim razie skupić, skoro to powiązanie 2-ch innych kontrolek… może na zastosowaniu. Sam używam często tej kontrolki w jednym tylko celu. Aby w interfejsie umieścić możliwość rozwinięcia jego obszaru. Czyli przypiąć parametr szerokości lub wysokości formy. Kliknięcie w przycisk rozwija formę lub ją zwija do pierwotnej wielkości (na prawo lub w dół) co należy przewidzeń przy projektowaniu większych przestrzeni. Można co prawda włączyć za każdym razem wyśrodkowanie, ale w tedy przełącznik ganiał by nam po ekranie i byłoby to mało ergonomiczne. Oto przykład takiego zastosowania i przykładowy kod:
Private Sub UserForm_Initialize()
Call stan_toogla(ToggleButton1.Value)
End Sub
Private Sub ToggleButton1_Click()
Call stan_toogla(ToggleButton1.Value)
End Sub
Sub stan_toogla(rozwin As Boolean)
If rozwin = True Then
Me.Width = 447
ToggleButton1.Caption = "<-"
ToggleButton1.ControlTipText = "Kliknij aby zwinąć"
Else
Me.Width = 243
ToggleButton1.Caption = "->"
ToggleButton1.ControlTipText = "Kliknij aby rozwinąć"
End If
End Sub
W kodzie postarałem się przekazać wartość kontrolki do procedury z parametrem. Jest to krótsza forma, niż powielanie identycznych linijek w ustawieniu początkowym i reakcji na naciśnięcie Toggla.
Jeśli uważasz że pokazane materiały są godne polecenia – podziel się tą wiadomością z innymi pozostawiając odnośnik to tego materiału.
(c) Shon Oskar – http://VBATools.pl
Wszelkie prawa zastrzeżone. Żadna część ani całość tego artykułu nie może być powielana ani publikowana bez zgody autora.