GlBox i mysz.

0

Czy jest jakaś możliwość obsługi kliknięcia myszy dla w.w. komponentu??
W zdarzeniach dla GlBox znajduja się tylko: OnMouseDown, OnMouseUp, OnMouseMove, a nie wiem jak oprogramować klikniecie myszy i pobranie np.: współrzędnych x,y kliknięcia.

Wiem jak pobrac wspolrzedne kursora ale sa one w ukladzie ekranu. mi chodzi bardziej o wspolrzedne w opengl, gdzie zakres wyswietlanych wspolrzednych zmienia sie wraz z przesunieciem kamery.

0
rafal09876 napisał(a)

Czy jest jakaś możliwość obsługi kliknięcia myszy dla w.w. komponentu??

W zdarzeniach dla GlBox znajduja się tylko: OnMouseDown, OnMouseUp, OnMouseMove [...]

Czy mi się wydaję, czy jesteś aż tak ubogi w rozum, że nie wiesz do czego służą OnMouseUp i OnMouseDown...?

Przecież te dwa zdarzenia wystarczą do obsługi klikania myszą (no bo czym innym można kliknąć...), a dokładnie przechwytują wciśnięcie danego przycisku myszy (tu: OnMouseDown) oraz jego zwolnienie (tu: OnMouseUp) - jeśli działasz w obrębie danej kontrolki;

Można za ich pomocą zrobić to, co chcesz, tyle że nic się nie dowiesz, jeśli nie spróbujesz trochę pokombinować;

rafal09876 napisał(a)

Wiem jak pobrac wspolrzedne kursora ale sa one w ukladzie ekranu.

Myślę, że chodzi Ci w tym momencie o współrzędne kursora na ekranie, ale nie bardzo wiem jakie współrzędne chciałbyś otrzymać - napisz coś więcej, a przy okazji sprawdź różne metody w jakie wyposażona jest ta kontrolka;

Nic więcej nie mogę Ci napisać, bo sam nie korzystam z tej kontrolki ani z żadnej, która wchodzi w skład OpenGL - po prostu nie bawię się tym;

0
rafal09876 napisał(a):

Wiem jak pobrac wspolrzedne kursora ale sa one w ukladzie ekranu. mi chodzi bardziej o wspolrzedne w opengl, gdzie zakres wyswietlanych wspolrzednych zmienia sie wraz z przesunieciem kamery.

ScreenToClient() nie wystarczy?

0

Dopiero zaczynam programowanie obiektowe, ale faktycznie moje pytanie o obsluge myszy bylo niepotrzebne bo szybko sobie z tym poradzilem.

co do wspolrzednych. po kliknieciu mysza potrafie pobrac wspolrzedne x,y myszy na ekranie. jesli uzyje ScreenToClient() to otrzymam wspolrzedne myszy "zredukowane" do mojej formy. Ja natomiast musze te wspolrzedne zamienic na wsp opengl. W moim GlBox'ie rysuje sobie układ linii łamanych w zakresie np.: x<0.0;1000.0> y<0.0;1000.0>. I teraz chciałbym zaznaczyc wybrana linie poprzez klikniecie i zmiane jej koloru. czytalem ze musze zrobic transformacje macierzy itp no i tu jest głowny problem.

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