HGDI_PALETTE gdi_GetSystemPalette() { if (!hSystemPalette) hSystemPalette = CreateSystemPalette(); return hSystemPalette; }
BOOL KToolbarB::SetBitmap(HINSTANCE hInstance, int resourceID) { HPALETTE hPal = CreateSystemPalette(); HBITMAP hBmp = PaletteLoadBitmap(hInstance, MAKEINTRESOURCE(resourceID), hPal); DeleteObject(hPal); if ( hBmp ) { TBREPLACEBITMAP rp; rp.hInstOld = m_ResInstance; rp.nIDOld = m_ResId; rp.hInstNew = NULL; rp.nIDNew = (UINT) hBmp; rp.nButtons = 40; SendMessage(m_hWnd, TB_REPLACEBITMAP, 0, (LPARAM) & rp); if ( m_ResInstance==NULL ) DeleteObject( (HBITMAP) m_ResId); m_ResInstance = NULL; m_ResId = (UINT) hBmp; return TRUE; } else return FALSE; }