[WinAPI] Wyświetlanie Bitmapy na Picture Control.

0

Witam,

Używam Visual Studio C++.
Utworzyłem w resources formatkę dialog (IDD_ABOUT), na której wstawiłem między innymi Picture Control (IDC_PICT_CONT).
W resourcach wstawiłem także bitmapę (IDB_ME).

Teraz, chciałbym zrobić, by po wyświetleniu dialogu:
DialogBox(hInst, MAKEINTRESOURCE(IDD_ABOUT), hWnd, dlgProc);
bitmapa pojawiła się na Picture Control.

Wstawiłem w procedurze obsługi okna formatki między innymi następujący kod:

		case WM_INITDIALOG: {
			HBITMAP hBitmap = (HBITMAP)LoadImage(hInst, MAKEINTRESOURCE(IDB_ME), IMAGE_BITMAP, 117, 120, LR_DEFAULTCOLOR);
			HWND hPictCont = GetDlgItem(hDlg, IDC_PICT_CONT);
			SendMessage(hPictCont, STM_SETIMAGE, (WPARAM)IMAGE_BITMAP, (LPARAM)hBitmap);
			return (INT_PTR)TRUE;
		}

Aczkolwiek bitmapa się nie wyświetla :(
Wie ktoś może co należało by poprawić?

0

Wystarczy że w pliku rc to ustawisz:

1 BITMAP DISCARDABLE "res/BannerClassic02.bmp"

IDD_SHEETPAGE1 DIALOGEX 6,5,331,154
FONT 8,"MS Sans Serif",0,0
STYLE 0x10CF0800
BEGIN
   CONTROL "#1",IDC_IMG2,"Static",0x5000020E,4,5,74,144

"#1" jest tu nazwą bitmapy, a raczej id zasobu o typie BITMAP. Gdyby bitmapa miała id w postaci stringu (np BANNER) to w miejsce #1 wstawiasz ten sam string.

0

w formatce którą ustawiłeś we właściwościach wybierz Bitmap jako Type

1 użytkowników online, w tym zalogowanych: 0, gości: 1