Sdílet prostřednictvím


CStatic::SetBitmap

Přidruží nové bitmapy statického ovládacího prvku.

HBITMAP SetBitmap(
   HBITMAP hBitmap 
);

Parametry

  • hBitmap
    Popisovač rastrového obrázku ve statické ovládací prvek vykreslit.

Vrácená hodnota

Popisovač rastrového obrázku, který byl dříve přidružený ovládací prvek statické nebo NULL Pokud byl přidružen k ovládacímu prvku statické žádná bitmapa.

Poznámky

Rastr bude automaticky vykreslí statického ovládacího prvku.Ve výchozím nastavení ji bude nakreslen v levém horním rohu a statického ovládacího prvku se přizpůsobí velikost rastrového obrázku.

Můžete použít různé okna a styly statického ovládacího prvku, včetně těchto:

  • Tento styl SS_BITMAP vždy použít pro rastrové obrázky.

  • Použití SS_CENTERIMAGE na střed obrázku v ovládacím prvku statické.Obraz je větší než statické ovládací prvek, bude oříznut.Pokud je menší než statický prvek, prázdné místo kolem obrázku sestavil barva obrazového bodu v levém horním rohu mapy.

  • Knihovna MFC poskytuje třídu CBitmap, které lze použít, pokud máte více než jen volání Win32 bitmapovým obrazem funkce LoadBitmap.CBitmap, který obsahuje jeden druh objektu GDI se často používá ve spolupráci s CStatic, je CWnd třída, která slouží k zobrazení grafického objektu jako statický prvek.

CImageje-li třídu knihovny ATL nebo MFC, která umožňuje snadno pracovat s rastry nezávislé na zařízení (DIB).Další informace naleznete v tématu Třída CImage.

  • Typické využití je poskytnout CStatic::SetBitmap objektu GDI, který je vrácen provozovatelem HBITMAP CBitmap nebo CImage objektu.Se podobá následující řádek kódu postupujte.
MyStaticControl.SetBitmap(HBITMAP(MyBitmap));

Následující příklad vytvoří dva CStatic objekty do haldy.Pak načte s bitmap systému pomocí CBitmap::LoadOEMBitmap a jiné ze souboru pomocí CImage::Load.

Příklad

// Code such as this could be placed in the OnInitDialog callback. 
// It creates two bitmap static controls on the heap, using members 
// _m_pCStatic_A and _m_pCStatic_B to identify them so that they can 
// be destroyed when no longer needed.

  CBitmap CBmp;
  CImage CImg;

  // Create a child bitmap static control and load it from a CBitmap object.
  _m_pCStatic_A = new CStatic;
  _m_pCStatic_A->Create(_T("A bitmap static control (A)"), 
      WS_CHILD|WS_BORDER|WS_VISIBLE|SS_BITMAP|SS_CENTERIMAGE, CRect(16,16,64,64),
      pParentWnd);
  CBmp.LoadOEMBitmap(OBM_CLOSE);  // Loads one of the default Windows bitmaps
  _m_pCStatic_A->SetBitmap( HBITMAP(CBmp) );
  _m_pCStatic_A->ShowWindow( SW_SHOW );

  // Create a child bitmap static control and load it from a CImage object.
  _m_pCStatic_B = new CStatic;
  _m_pCStatic_B->Create(_T("A bitmap static control (B)"), 
      WS_CHILD|WS_BORDER|WS_VISIBLE|SS_BITMAP|SS_CENTERIMAGE, CRect(90,16,138,64),
      pParentWnd);
  CImg.Load( _T("test.png") );
  if( _m_pCStatic_B->GetBitmap( ) == NULL )
    _m_pCStatic_B->SetBitmap( HBITMAP(CImg) );

  /* Then, later: 
   delete( _m_pCStatic_A );
   delete( _m_pCStatic_B );
   */

Požadavky

Záhlaví: afxwin.h

Viz také

Referenční dokumentace

Třída CStatic

Graf hierarchie

CStatic::GetBitmap

STM_SETIMAGE

Bitmaps

Třída CBitmap

Třída CImage