Drehfeld mit Accelerator betätigen



  • Hallo Loid,

    ich feile gerade an einer Dialogbox. Da gibts ein Drehfeld, und das möchte ich mit den Acceleratoren Pfeiltaste oben/unten betätigen. Dies habe ich über <Membervariable Spincontrol>.SetPos auch geschafft (Debugger zeigts richtig), aber das zugehörige Anzeigefeld (kein Buddy) reagiert nicht wie geklickt. Wie emuliere ich das? Gibt es sowas wie ein Invalidate(SpinControl)? 😉

    So weit bin ich bis jetzt, und es funktioniert auch:

    void Texteingabe::OnOben() 
    {
        int Pos = 0;
        Pos = m_ctlSpin.GetPos() - 65536;
    
        if ( Pos < (m_intMax ))  {
            m_ctlSpin.SetPos (Pos+65536 + 1);
            m_intClicks += 1;
        }
        Read();
    }
    

    Das Problem ist, dass ich mit SetPos das Drehfeld weiterschalte, trotzdem aber meine Variabel m_intClicks von Hand hochzählen muss. Wie emuliere ich die Betätigung der Pfeilschaltfläche mit der Tastatur?

    Weiß jemand, wieso die Schalterposition erst bei 65537 anfängt? Ist das immer so?

    Danke für den Input,
    Wind


Anmelden zum Antworten