Udostępnij za pośrednictwem


Informacje o kontrolkach Rebar

Kontrolka paska narzędziowego działa jako kontener dla okien podrzędnych. Może zawierać jeden lub więcej pasów , a każdy pasek może mieć dowolną kombinację belki chwytaka, mapy bitowej, etykiety tekstowej i jednego okna podrzędnego. Aplikacja przypisuje okno podrzędne — zazwyczaj inną kontrolkę — do pasm sterowania paska pomocniczego. Gdy dynamicznie przesuwasz pasek sterujący prętami, kontrolka prętów steruje rozmiarem i położeniem okna podrzędnego przypisanego do tego pasa. Ponadto aplikacja może określić mapę bitową tła dla zespołu, a kontrolka paska pomocniczego wyświetli okno podrzędne zespołu na mapie bitowej.

Poniższy zrzut ekranu przedstawia kontrolkę rebar z dwoma pasmami. Jeden zawiera pasek narzędzi, a drugi zawiera listę rozwijaną. Oba paski mają uchwyt, który pozwala na ich przenoszenie i zmienianie rozmiaru.

zrzut ekranu okna dialogowego przedstawiający kontrolkę typu rebar z pasmem, które zawiera pasek narzędzi i pasmem, które zawiera pole kombi

Notatka

Kontrolka paska pomocniczego jest implementowana w wersji 4.70 lub nowszej Comctl32.dll.

 

Paski paska pomocniczego i podrzędne okna

Aplikacja definiuje cechy pasków paska pomocniczego przy użyciu komunikatów RB_INSERTBAND i RB_SETBANDINFO. Te komunikaty akceptują adresu struktury REBARBANDINFO jako parametru lParam. Składowe struktury REBARBANDINFO definiują cechy danego zespołu. Aby ustawić właściwości zespołu, należy ustawić element cbsize, aby wskazać rozmiar struktury w bajtach. Następnie ustaw człon maski , aby wskazać, które człony struktury wypełnia aplikacja.

Aby przypisać okno podrzędne do pasma, dołącz flagę RBBIM_CHILD w fMask pola struktury REBARBANDINFO, a następnie ustaw pole hwndChild na uchwyt okna podrzędnego. Aplikacje mogą ustawić minimalną dozwoloną szerokość i wysokość okna podrzędnego w składnikach cxMinChild oraz cyMinChild.

Gdy kontrolka belki narzędzi zostanie zniszczona, niszczy wszystkie okna podrzędne przypisane do pasków w niej. Aby zapobiec niszczeniu okien podrzędnych przypisanych do pasm, usuń pasma, wysyłając komunikat RB_DELETEBAND, a następnie użyj komunikatu RB_SETPARENT, aby zresetować okno rodzicielskie do innego okna przed zniszczeniem kontrolki rebar.

Interfejs użytkownika kontrolki Rebar

Rozmiar wszystkich pasków sterujących prętami zbrojeniowymi można zmienić, z wyjątkiem tych, które stosują styl RBBS_FIXEDSIZE. Aby zmienić lub zmienić kolejność pasków w kontrolce, kliknij i przeciągnij pasek uchwytu zespołu. Kontrolka paska narzędzi automatycznie zmienia rozmiar i położenie okien podrzędnych przypisanych do pasm. Ponadto można przełączać rozmiar paska, klikając na tekst paska, jeśli istnieje.

Lista obrazów kontrolki paska

Jeśli aplikacja używa listy obrazów z kontrolką rebar, musi wysłać komunikat RB_SETBARINFO przed dodaniem pasm do kontrolki. Ten komunikat akceptuje adres struktury REBARINFO jako parametr lParam. Przed wysłaniem komunikatu przygotuj strukturę REBARINFO, ustawiając element cbSize na rozmiar struktury w bajtach. Następnie, jeśli kontrolka paska narzędzi będzie wyświetlać obrazy na pasmach, ustaw element członkowski maski na flagę RBIM_IMAGELIST i przypisz uchwyt listy obrazów do elementu członkowskiego himl. Jeśli pasek rebar nie będzie używać obrazów pasmowych, ustaw fMask na zero.

Przekazywanie komunikatów zarządzania prętami zbrojeniowymi

Kontrolka paska pomocniczego przekazuje wszystkie komunikaty okna WM_NOTIFY do okna nadrzędnego. Ponadto kontrolka paska pomocniczego przekazuje wszystkie komunikaty wysyłane do niego z okien przypisanych do pasm, takich jak WM_CHARTOITEM, WM_COMMANDi inne.