img/mfc2.jpg

CBitmapButton


Opis

Tego rodzaju przycisków używa się gdy chcemy utworzyć przycisk klasyczny zawierający bitmapę oraz tekst. Objekt CbitmapButton może zawierać do czterech bitmap. Każda z bitmap odpowiada za inny stan przycisku: naciśnięty, nienaciśnięty, z ogniskiem, nieaktywny. Tylko bitmapa odpowiadająca za stan nienaciśnięty jest obowiązkowa.

W celu utworzenia obiektu CBitmapButton należy nadać przyciskowi styl BS_OWNERDRAW co spowoduje wysyłanie komunikatów WM_MEASUREITEM i WM_DRAWITEM, a następnie wykonać kroki:

  1. Utworzyć przycisk w okienku dialogowym (w edytorze zasobów)
  2. Nadać przyciskowi podpis, np. "MYIMAGE" i nadać identyfikator IDC_MYIMAGE
  3. Utworzyć przynajmniej jedną bitmapę dla przycisku
  4. Każdej bitmapie nadaj identyfikator taki sam jak był podpis przycisku i dodaj do niego jedną z liter "U", "D", "F", "X", np. "MYIMAGEU". Identyfikatory muszą być ujęte w podwójne apostrofy
  5. Zdefiniować obiekt typu CBitmapButton
  6. Wywołać metodę Create w celu utworzenia standardowego przycisku Windows i skojarzenia go z obiektem CBitmapButton
  7. W metodzie OnInitDialog wywołaj metodę AutoLoad z parametram będącym Identyfikatorem przycisku

Metody

Metoda Opis
CBitmapButtonkonstruktor obiektu CBitmapButton
LoadBitmapsInicjuje obiekt poprzez załadowanie jednej lub kilku bitmap zawartych w zasobach i przyłączenie ich do obiektu CBitmapButton
AutoLoadKojarzy przycisk z obiektem klasy CBitmapButton, ładuje bitmapy z zasobów i określa rozmiar przycisku na podstawie wymiarów bitmap
SizeToContentDostosowywuje rozmiar przycisku do wymiarów bitmap z nim skojarzonych


Hierarchia

img/hr_cbitmapbutton.gif