Udostępnij za pośrednictwem


CImageList::DrawIndirect

Wywołanie tej funkcji Członkowskich Rysowanie obrazu z listy obrazu.

BOOL DrawIndirect(
   IMAGELISTDRAWPARAMS* pimldp 
);
BOOL DrawIndirect(
   CDC* pDC,
   int nImage,
   POINT pt,
   SIZE sz,
   POINT ptOrigin,
   UINT fStyle = ILD_NORMAL,
   DWORD dwRop = SRCCOPY,
   COLORREF rgbBack = CLR_DEFAULT,
   COLORREF rgbFore = CLR_DEFAULT,
   DWORD fState = ILS_NORMAL,
   DWORD Frame = 0,
   COLORREF crEffect = CLR_DEFAULT
);

Parametry

  • pimldp
    Wskaźnik do IMAGELISTDRAWPARAMS strukturę, która zawiera informacje dotyczące operacji rysowania.

  • pDC
    Wskaźnik do kontekstu urządzenia docelowego.Należy usunąć to CDC obiekt po zakończeniu z nim.

  • nImage
    Wyświetlanego obrazu wyciągnąć.

  • pt
    A punkt struktury zawierającej współrzędne x– i y–, gdzie rysowane obrazu.

  • sz
    A rozmiar wskazująca rozmiar obrazu do struktury.

  • ptOrigin
    A punkt struktury zawierającej x– i y–coordinates, określając w lewym górnym rogu operacji rysowania w odniesieniu do samego obrazu.Piksele obrazu, które są x–coordinate i powyżej y–coordinate po lewej stronie nie są pobierane.

  • fStyle
    Określanie stylu rysunku i, opcjonalnie, obraz nakładki flagi.Zobacz sekcję Spostrzeżenia informacji na obrazie nakładki.Domyślna implementacja MFC ILD_NORMAL, Rysuje obraz za pomocą koloru tła dla listy obrazu.Jeśli kolor tła jest CLR_NONE wartość obrazu jest rysowane przezroczysty przy użyciu maski.

    Inne możliwe style są opisane w fStyle członek IMAGELISTDRAWPARAMS struktury.

  • dwRop
    Wartości określające kod operacji rastrowe.Kody te definiują, jak dane koloru prostokąta źródłowego zostaną połączone z dane koloru docelowego prostokąta do osiągnięcia kolor końcowy.MFC's default wdrażania, SRCCOPY, kopiuje bezpośrednio prostokąt źródłowy docelowy prostokąt.Ten parametr jest ignorowany, jeśli fStyle nie zawiera parametru ILD_ROP flagi.

    Inne możliwe wartości są opisane w dwRop członek IMAGELISTDRAWPARAMS struktury.

  • rgbBack
    Kolor tła obrazu, domyślnie CLR_DEFAULT.Ten parametr może być zdefiniowane przez aplikację wartości RGB lub jedną z następujących wartości:

    Wartość

    Znaczenie

    CLR_DEFAULT

    Domyślny kolor tła.Obraz jest rysowany za pomocą koloru tła obrazu listy.

    CLR_NONE

    Brak koloru tła.Obraz jest rysowany przezroczysty.

  • rgbFore
    Obraz domyślny kolor pierwszego planu CLR_DEFAULT.Ten parametr może być zdefiniowane przez aplikację wartości RGB lub jedną z następujących wartości:

    Wartość

    Znaczenie

    CLR_DEFAULT

    Domyślny kolor pierwszego planu.Obraz jest rysowany za pomocą koloru podświetlenia systemu jako kolor pierwszego planu.

    CLR_NONE

    Brak koloru mieszania.Obraz jest mieszane z kolorem kontekstu urządzenia docelowego.

    Ten parametr jest używany tylko wtedy, gdy fStyle obejmuje ILD_BLEND25 lub ILD_BLEND50 flagi.

  • fState
    Określanie rysunku Państwo bandery.Członek ten może zawierać jedną lub więcej flag stanu listy obrazu.

  • Ramki
    Wpływa na zachowanie efekty mieszania alfa i saturate.

    Gdy używana z ILS_SATURATE, członek ten posiada wartość, która jest dodawana do każdego komponentu koloru Trzykolumnowa RGB dla każdego piksela w ikonie.

    Gdy używana z ILS_APLHA, członek ten posiada wartość kanału alfa.Ta wartość może być od 0 do 255, gdzie 0 jest całkowicie przezroczysty, a 255 całkowicie nieprzezroczysty.

  • crEffect
    A COLORREF używane dla efektów cienia i wartość.

Wartość zwracana

TRUE , jeśli obraz jest pomyślnie rysowane; w przeciwnym razie FALSE.

Uwagi

Jeśli chcesz wypełnić strukturę Win32 samodzielnie, należy użyć pierwszej wersji.Jeśli chcesz skorzystać z jednej lub więcej argumentów domyślne MFC firmy lub uniknąć struktury zarządzania, należy użyć wersji drugiego.

Nakładki obrazu jest obrazem, który jest rysowane na obrazie podstawowym, określonych w tej funkcji Członkowskich przez nImage parametru.Rysuj za pomocą maski nakładki Rysuj Członkowskich funkcji indeks oparte one określone za pomocą maski nakładki INDEXTOOVERLAYMASK makro.

Przykład

int i, dx, cx, cy, nCount = m_myImageList.GetImageCount();

::ImageList_GetIconSize(m_myImageList, &cx, &cy);

// Draw the images of the image list on the DC.
for (dx = 0, i = 0; i < nCount; i++)
{
   m_myImageList.DrawIndirect(&dc, i, CPoint(dx, 0), 
      CSize(cx, cy), CPoint(0, 0));
   dx += cx;
}      

Wymagania

Nagłówek: afxcmn.h

Zobacz też

Informacje

Klasa CImageList

Wykres hierarchii

CImageList::SetOverlayImage