So habe ich diese Bedingung, die ein GUI-Objekt auf eine Führungslinie Objekt einrastet. Ich möchte, dass das Objekt einrastet, aber wenn das System weiterhin eine Mausbewegung erkennt, möchte ich, dass das Objekt sich löst und weiter bewegt. Ich habe den Schnappzustand funktioniert, aber ich scheitere bei letzterem.C# Mit einem Timer, um einen booleschen Wert zu wechseln
Dies ist der Fall, dass ich schießen werde und es ständig zu
vom System gehört wirdprivate void UserControl_MouseMove(object sender, MouseEventArgs e)
{
if (IsMouseCaptured && snappedVertically) //The IsMouseCaptured listens for mouse movement and snapped vertically is what I am using to snap the GUI element
{
if (snappedVertically)
{
Thread.Sleep(2000); //wait 2 seconds...
snappedVertically = false; //...then unsnap
}
}
}
Das Problem ist, dass in der Anwendung gibt es Latenz, die dann nicht mehr reagiert, und ich habe eine Kraft Neustart zu tun . Kann mir jemand mit diesem Problem helfen?
Ich bin nicht wirklich sicher, was Sie versuchen ... Warum setzen Sie 'Thread.Sleep (2000)'? Dies blockiert den UIhread. – gilmishal