Serwis Edukacyjny
Nauczycieli
w I-LO w Tarnowie

Do strony głównej I LO w Tarnowie

Materiały dla uczniów liceum

  Wyjście       Spis treści       Wstecz       Dalej  

©2021 mgr Jerzy Wałaszek
I LO w Tarnowie

logo

Autor artykułu: mgr Jerzy Wałaszek

 

SDL2

Interfejs SDL2:

SDL_MouseWheelEvent

Rozdziały:
     Interfejs SDL2 wg nazw
     Interfejs SDL2 wg kategorii

 

Rozdział jest tłumaczeniem oryginalnej instrukcji dla biblioteki SDL2. Oryginał znajdziesz pod tym adresem: https://wiki.libsdl.org/CategoryAPI.

SDL_MouseWheelEvent

Struktura zawiera informację o zdarzeniu związanym z kółkiem myszki.

Pola danych

Uint32 type SDL_MOUSEWHEEL.
Uint32 timestamp czas zdarzenia.
Uint32 windowID okno ze skupieniem myszki, jeśli istnieje.
Uint32 which identyfikator myszki lub SDL_TOUCH_MOUSEID; zobacz do Uwag.
Sint32 x ilość przewinięcia w poziomie, dodatnia w prawo, ujemna w lewo.
Sint32 y ilość przewinięcia w pionie, dodatnia od użytkownika, ujemna do użytkownika.
Uint32 direction SDL_MOUSEWHEEL_NORMAL lub SDL_MOUSEWHEEL_FLIPPED; zobacz do Uwag (>= SDL 2.0.4).

Przykładowy kod

SDL_Event event;
while( SDL_PollEvent( &event ) )
{
    if(event.type == SDL_MOUSEWHEEL)
    {
        if(event.wheel.y > 0) // przewinięcie w górę
        {
             // Wstaw tutaj przewijania w górę kod!
        }
        else if(event.wheel.y < 0) // przewinięcie w dół
        {
             // Wstaw tutaj przewijania w dół kod!
        }

        if(event.wheel.x > 0) // przewinięcie w prawo
        {
             // ...
        }
        else if(event.wheel.x < 0) // przewinięcie w lewo
        {
             // ...
        }
    }
    else if(event.type == SDL_SDL_MOUSEBUTTONDOWN)
    {
        // ... obsługa kliknięć myszką ...
    }

    // ... obsługa innych rodzajów zdarzeń ...
}

Uwagi

Struktura SDL_MouseWheelEvent należy do unii SDL_Event i jest używana przy zgłaszaniu zdarzenia typu SDL_MOUSEWHEEL. Dostęp do niej uzyskasz poprzez pole zdarzenia wheel.

Zdarzenie SDL_MOUSEWHEEL występuje, gdy użytkownik porusza kółkiem myszki.

Ruchy w lewo generują ujemne wartości x, a ruchy w prawo generują wartości dodatnie. Ruchy w dół (przewijanie do tyłu) generują ujemne wartości y, a ruchy w górę (przewijanie do przodu) generują wartości dodatnie.

Pole which może mieć wartość SDL_TOUCH_MOUSEID dla zdarzeń wygenerowanych przez urządzenie dotykowe, a nie przez rzeczywistą myszkę. Jeśli twoja aplikacja obsługuje już zdarzenie SDL_TouchFingerEvent, możesz zignorować je.

SDL nie uogólnia kierunków przewijania kółkiem myszki, aby były spójne na wszystkich platformach (SDL_MOUSEWHEEL_NORMAL). Jeśli direction ma wartość SDL_MOUSEWHEEL_FLIPPED, to wartości x i y będą przeciwne. Pomnóż je przez -1, aby otrzymać wartości standardowe.

Powiązane enumeracje

Powiązane struktury

 

Zespół Przedmiotowy
Chemii-Fizyki-Informatyki

w I Liceum Ogólnokształcącym
im. Kazimierza Brodzińskiego
w Tarnowie
ul. Piłsudskiego 4
©2021 mgr Jerzy Wałaszek

Materiały tylko do użytku dydaktycznego. Ich kopiowanie i powielanie jest dozwolone
pod warunkiem podania źródła oraz niepobierania za to pieniędzy.

Pytania proszę przesyłać na adres email: i-lo@eduinf.waw.pl

Serwis wykorzystuje pliki cookies. Jeśli nie chcesz ich otrzymywać, zablokuj je w swojej przeglądarce.
Informacje dodatkowe.