Kirjautuminen

Haku

Tehtävät

Keskustelu: Ohjelmointikysymykset: C++: SDL: hiiriongelma

crafn [11.07.2007 14:31:37]

#

Olen tässä väsäillyt omaa hiiri-luokkaa. Muuten toimii, mutta hiiren oikean napin kanssa on ollut ongelmia.

if(m_Current.m_intState & SDL_BUTTON(1) && !m_Previous.m_intState & SDL_BUTTON(1))

Tuollaisella koodilla iffin sisältö suoritetaan jos painan hiiren vasenta näppäintä. Mutta jos vaihdan SDL_BUTTONin parametreiksi 3, eli hiiren oikean napin, niin iffin sisältöä ei suoritetakkaan kun painan hiiren oikeaa nappia :o

Strukti josta m_Current- ja m_Previous-tietueet ovat luotu:

struct SMouseInfo
{
    int m_intX, m_intY;
    int m_intState;
    void Reset()
    {
        m_intX = 0; m_intY = 0;
        m_intState = 0;
    }
};

Vaikuttaa minusta hiukan oudolta ongelmalta. Olisin iloinen jos kykenisitte auttamaan minua.

Metabolix [21.07.2007 14:02:42]

#

Lisätäänpä parit sulut:
if ((m_Current.m_intState & SDL_BUTTON(3)) && !(m_Previous.m_intState & SDL_BUTTON(3)))

En nyt ulkoa muista &:n ja &&:n suoritusjärjestystä, mutta ainakin omassa versiossasi !m_Previous.m_intState on yksi kokonaisuus, ja tämän tuottama arvo (varmaankin 1 tai 0) sitten andataan tuon nappimaskin kanssa.

crafn [28.07.2007 12:52:32]

#

Nonnii, nyt toimii :)
Kiitos paljon.

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta