18
« on: October 24, 2009, 06:08:04 pm »
sf::RenderWindow *Render;
HWND hWindow, Render_Window;
MSG Msg;
main()
{
WNDCLASSEX KlasaOkna;
ZeroMemory (&KlasaOkna, sizeof(WNDCLASSEX));
KlasaOkna.cbSize = sizeof(WNDCLASSEX);
KlasaOkna.hInstance = hInstance;
KlasaOkna.lpfnWndProc = WindowEventProc;
KlasaOkna.lpszClassName = WindowClass.c_str();
KlasaOkna.hCursor = LoadCursor(NULL, IDC_ARROW);
KlasaOkna.hIcon = LoadIcon(NULL, IDI_APPLICATION);
KlasaOkna.hbrBackground = (HBRUSH) COLOR_WINDOW;
RegisterClassEx (&KlasaOkna);
// tworzymy okno funkcją CreateWindowEx
hWindow = CreateWindowEx(NULL, // rozszerzony styl
WindowClass.c_str(), // klasa okna
WindowCaption.c_str(), // tekst na p. tytułu
WS_SYSMENU, // styl okna
CW_USEDEFAULT, // współrzędna X
CW_USEDEFAULT, // współrzędna Y
800, // szerokość
600, // wysokość
NULL, // okno nadrzędne
NULL, // menu
hInstance, // instancjs aplikacji
NULL); // dodatkowe dane
DWORD Style = WS_CHILD | WS_VISIBLE | WS_CLIPSIBLINGS;
HWND Render_Window = CreateWindow("STATIC", NULL, Style, 0, 0, 800, 600, hWindow, NULL, hInstance, NULL);
sf::RenderWindow View01(Render_Window);
Render = &View01;
ShowWindow (hWindow, SW_SHOW);
while (Msg.message != WM_QUIT)
{
if (PeekMessage(&Msg, NULL, 0, 0, PM_REMOVE))
{
TranslateMessage (&Msg);
DispatchMessage (&Msg);
}
else
{
sf::Event Event;
while (Render->GetEvent(Event))
{
// Process event
}
Display_FPS();
float32 timeStep = 1.0f / 60.0f;
int32 iterations = 10;
B2DWorld->Step(timeStep, iterations);
int Mouse_X = Render->GetInput().GetMouseX(), Mouse_Y = Render->GetInput().GetMouseY();
Render->Clear(sf::Color(255, 255, 255));
Button.Display(Render, DeltaTime);
Render->Display();
}
}
[/code]