none
MouseDown mit MouseLeave unterbrechen RRS feed

  • Frage

  • Hallo,

    in meinem Programm werden mittels permanentem Button-Press(MouseDown) Daten gesendet.

    Durch Aufheben des Mausklicks(MouseUp) wird das Datensenden abgebrochen.

    Wenn ich im gedrückten Zustand die Maus von dem Button weg bewege und die Maus tatsächlich nicht mehr

    über dem Control steht ist immer noch MouseDown aktiv. Das ist wahrscheinlich so gewollt, bei Touchbedienung

    aber unpraktisch. Ich hatte gehofft diesen Umstand in einem MouseLeave-Ereignis abzufangen und das Datensenden

    zu unterbrechen aber offensichtlich ist MouseDown höher prior?

    Hättet ihr eine Lösung die erkennt das das Control verlassen wird auch wenn MouseDown aktiv ist?

    Danke Michael

     

     

    Mittwoch, 16. März 2011 09:51

Antworten

  • Ich hab's so gelöst:

            private void btn_Spin_MouseMove(object sender, MouseEventArgs e)
            {
                if (BgW.IsBusy == false) return;

                if ((e.X > ((Button)sender).Width)  || (e.X < 0) ||
                    (e.Y > ((Button)sender).Height) || (e.Y < 0))
                    BgW.CancelAsync();
            }

    • Als Antwort markiert mimuel Mittwoch, 16. März 2011 11:06
    Mittwoch, 16. März 2011 11:06