Hallo, ich habe ein kleines Programm geschrieben, daß wo etwas wie ein Transportfeld vom Kassettenrekorder enthält. Es gibt Transport Buttons für Forlauf und Rücklauf. Was ich möchte ist, daß man, solange der Button gerückt ist eine Aktion ausgeführt wird. Mit der Mauß funktionniert das auch alles super, nur wenn ich die Anwendung auf meinem Tablet laufen lasse und die Tasten über das Touch-Display bedienen will habe ich das Problem, daß bei längerem Halten Windows 8 das Kontextmenü anzeigen will. Gibt es eine Möglichkeit zu verhindern, daß Windows 8 bei Touchbedienung das Kontextmenü anzeigt. Ideal wäre es natürlich, daß man das abhängig vom Ort (also z.B. vom Button) machen kann, den man Berührt. Es es ein ganz normales Windows Desktop Programm, also keine Metro Anwendung.
Vielleicht einfach kein Kontextmenu auf den Button legen? Dann kann auch keins geöffnet werden.
Es ist kein Kontextmenü vorhanden. Aber nach kurzem Halten geht halt ein leeres Kästchen auf und der "Mouse"-Klick wird beendet, obwohl ich den Finger nicht vom Display genommen habe. Ich hatte gehoft, daß es so etwas wie einen Parameter gibt, mit dem man das Verhalten temporär deaktivieren könnte. Habe aber bisher im Internet nichts gefunden. Über die Registry sollte es wohl eine Möglichkeit geben, nur wird dadurch das Tablet nutzloß, wenn man den virtuellen Right-Click global deaktiviert. Es muß schon nur für die laufende Anwendung sein.
Systemsteuerung -> Stift- und Fingereingabe -> Andere -> "Gedrückt halten" -> Einstellungen ... -> "Gedrückthalten für Rechtsklick" deaktivieren (oder Geschwindigkeit/Dauer ändern, es gibt dort ein Testfeld). Hilft natürlich nicht, wenn die Anwendung auf einem anderen Rechner verwendet wird. Bei .NET/WPF würde ich versuchen, OnPreviewMouseRightButtonDown zu implementieren und Handled zu setzen. Es gibt auch 'Stylus.IsPressAndHoldEnabled="True"', aber das habe ich bisher noch nicht getestet.
Und ja, globales Deaktivieren ist ohnehin keine gute Idee ...
'Stylus.IsPressAndHoldEnabled="False"' natürlich. Sorry wegen des Spammens, aber was man nicht im Kopf hat, muss man eben in den Fingern haben.
OnPreviewMouseRightButtonDown habe ich mal auf handled gesetzt. Hat aber nicht funktionniert. Übrigens: Das globale ausschalten ist zwar möglich, aber auch danach ist kein langer Mausklick möglich.
IsRightTapEnabled und IsHoldingEnabled hätte der Button auch noch anzubieten...
@ Be Bo Bevor du an irgendwelchen Nippeln und Buttons herumspielst: Lad Dir mal ne Tuete Deutsch runter.
Arc Net schrieb: > IsRightTapEnabled und IsHoldingEnabled hätte der Button auch noch > anzubieten... Be Bo schrieb: > Es es ein ganz normales Windows Desktop Programm, also keine Metro > Anwendung.
Ich habe jetzt eine Lösung gefunden. Etwas umständlich, aber funktioniert. Hier zwei Links, die für die interessant sein dürfen, die mit dem gleichen Problem kämpfen. Dieser User hat einen TouchButton von Butten abgeleitet und um TouchDown, TouchMove und TouchUp Events erweitert. http://www.mycsharp.de/wbb2/thread.php?threadid=101383&threadview=1&hilight=&hilightuser=0&sid=0057a953ce77add077675c2f0367b4ca Und hier steht, sie man das visuelle Feedback für einzelne Buttons deaktiviert. http://msdn.microsoft.com/en-us/library/ms812373.aspx Alles etwas umständlich, aber nun ja. Wenn man es einmal hat, dann ist es wieder einfach. Danke für Eure Tips. Schönen Sonntag noch
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.