Temat zakładek i użycia pliku bitmapy odczytanego z pliku z HDD a nie z "resource" - zasobów.
Mam problem (chyba) z paletą kolorów - kompatybilnością z kolorami aktualnego kontekstu.
Do kontrolki TabControl w pierwszej kolumnie dodaje "tekst" oraz bitmapę. Jednak kolory bitmapy są nie te (niezgodne z oryginałem bitmapy). Robię tak:
deklaracje w pliku: CMyDlg.h
CImageList CMyList;
CBitmap m_bmpBitmapa;
HBITMAP hBitmapa;
w CMyDlg::InitDialog()
CMyList.Create(::GetSystemMetrics(SM_CXSMICON), ::GetSystemMetrics(SM_CYSMICON), ILC_COLOR | ILC_MASK, 0, 0); hBitmapa = (HBITMAP) ::LoadImage(AfxGetInstanceHandle(), "C:\TestImg.bmp", IMAGE_BITMAP, 0, 0, LR_LOADFROMFILE | LR_CREATEDIBSECTION); if (m_bmpBitmapa.DeleteObject()) m_bmpBitmapa.Detach(); m_bmpBitmapa.Attach(hBitmapa); CMyList.Add(&m_bmpBitmapa, RGB(255,0,255));
w procedurze obsługi TabControl:
CMyDlg *Cmoj = (CMyDlg*) GetParent(); //wskażnik do wyższej klasy m_cLista.SetImageList(&Cmoj->CMyList,LVSIL_SMALL); //Member Variable dla CListCtrl m_cLista.InsertItem(0,"pierwszy",0);
Zapewne należy uzyć jakoś CreateCompatibleXXXXXX, no ale jak :-O