Jak "podmienić" obszar kliencki dwóch okien?

Odpowiedz Nowy wątek
2015-01-10 16:56
Problem
0

Programuję aplikację w OpenGL, która posiada dwa okna - każde stanowi osobną instancję klasy okno (posiada własną procedurę obsługi zdarzeń, zmienne uchwytów okna, HDC i HGLRC. Chciałbym z poziomu użytkownika, tj. poprzez kliknięcie myszą na wybraną część dowolnego okna "podmienić" renderowany obraz pomiędzy tymi dwoma oknami.

W tym celu zamieniłem zmienne HDC i HGLRC w obydwu obiektach (w klasie znajduje się funkcja rysująca która rozpoczyna się i kończy na funkcji wglMakeCurrent) i faktycznie okna "zamieniły" się renderowanymi scenami. Jednak pojawił się inny problem mianowicie wszystkie kliknięcia myszy w danym oknie oddziałują nie na pierwotne okno lecz na drugie, coś jakby razem z kontekstami renderowania zamieniły się też adresy procedur obsługi zdarzeń. Czy ktoś ma pomysł jak powinienem dokonać takiego manewru poprawnie?

Pozostało 580 znaków

2015-01-10 21:12
0

To nie procedury zdarzeń się zamieniły, tylko ty w zdarzeniach nadal aktualizujesz zmienne odpowiadające oknu sprzed podmiany.

Pozostało 580 znaków

Odpowiedz
Liczba odpowiedzi na stronę

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