Taj kod sam stavio u petlju dogadjaja void GameCycle().
Code:
HDC hDC;
HWND hWindow = _pGame->GetWindow();
//na slucajno odabranim mjestima crtaj ikonice
hDC = GetDC(hWindow);
DrawIcon(hDC, rand() % _pGame->GetWidth(), rand() % _pGame->GetHeight(),
(HICON)(WORD)GetClassLong(hWindow, GCL_HICON));
ReleaseDC(hWindow, hDC);
}
HDC hDC;
HWND hWindow = _pGame->GetWindow();
//na slucajno odabranim mjestima crtaj ikonice
hDC = GetDC(hWindow);
DrawIcon(hDC, rand() % _pGame->GetWidth(), rand() % _pGame->GetHeight(),
(HICON)(WORD)GetClassLong(hWindow, GCL_HICON));
ReleaseDC(hWindow, hDC);
}
hWindow dodjelim _pGame,a _pGame mi je pokazivac na varijablu:
Code:
GameEngine * _pGame;
GameEngine sam stavio kao static.GameEngine * _pGame;
Problem se javlja u redu:
Code:
(HICON)(WORD)GetClassLong(hWindow, GCL_HICON)
Prvo postavim handle na ikonicu pa pozovem 16-bitni integer(barem tako mislim) onda pozovem funkciju GetClassLong koja je sadrzana u Win32.Kompajler prijavljuje gresku da nije deklarisana referenca WinMain16 i da je dodat pokazivac od integera na drugu velicinu.Opet mislim da sam pogrjesio sto sam deklarisao klasu GameEngine i u njoj postavio sve promjenjive a deklarisao sam promjejivu GameEngine.Ali tu mi neprijavljuje nikakvu gresku niti upozorenje.
(HICON)(WORD)GetClassLong(hWindow, GCL_HICON)