Wie man eine Kombination von Tasten, die in c#
Wie kann ich capture Strg + Alt + K + P - Tasten auf einer C# - form?
Dank
Global, oder nur, wenn das Formular den Fokus hat?
Die form den Fokus hat
Die form den Fokus hat
InformationsquelleAutor Ristovak | 2010-07-14
Du musst angemeldet sein, um einen Kommentar abzugeben.
Es ist ein Akkord, kann man nicht erkennen, es ohne Auswendiglernen gesehen zu haben, der erste Tastendruck, der den Akkord. Das funktioniert:
Wiederholen keys erzeugen würde, Strg+P Strg+P. So nicht.
Ich habe gerade kompiliert und getestet, der code, und es nicht (fälschlicherweise) erfasst Wiederholung-Tasten, wenn Sie den Akkord verwendet den gleichen Schlüssel zweimal. Zum Beispiel, halten Sie die Taste STRG + ALT + P löst die Tastenkombination STRG + ALT + P + P-Akkord.
Dann hast du es falsch, entfernen von Schlüsseln.Alt-und-Tasten.Kontrolle aus der zweiten if () - Anweisung.
Nein, das wird nicht funktionieren. Aber das ist nicht der Punkt. Dieser code wird nicht funktionieren, für ein paar Akkorde, und ich wollte zeigen, dass aus an andere Benutzer.
InformationsquelleAutor Hans Passant
Ich bin mir nicht sicher, ob Sie kann. Was Sie jedoch tun KANN, ist die Möglichkeit, Visual Studio tut.
Es verfügt über shortcuts wie Strg + K, C. Sie zuerst die Taste Strg+K, dann halten Sie Strg und drücken Sie C. In Ihrem Fall könnten Sie überprüfen, für Strg+Alt+K,P.
Können Sie zunächst überprüfen, für die nur Sie Strg+Alt+K wie in den anderen Antworten, dann legen Sie eine member-variable/flag, um anzuzeigen, Strg+Alt+K - Taste gedrückt wurde. In der gleichen Methode, wo Sie für K können Sie P, und, wenn die Flagge, die Sie gerade festgelegt auf true festgelegt war, tun, was Sie tun müssen. Andernfalls setzen Sie das flag wieder auf false.
Raue pseudo-code:
Hoffe das ist klar genug.
InformationsquelleAutor Vivelin
MessageFilters
kann Ihnen helfen, in diesem Fall.Nun in Ihrem C# WindowsForm, registrieren Sie die MessageFilter für die Erfassung von Tastenbetätigungen und Kombinationen.
InformationsquelleAutor this. __curious_geek
Sehen, diese große blog-post über die Einrichtung von hotkeys in c#
Installation eines globalen hot-key mit
C#
Gibt es auch einen guten Artikel, der erklärt, all dies hier
InformationsquelleAutor Codesleuth
Können Sie GetKeyState, um den status der anderen Tasten, wenn Sie eine der Tasten der Kombination gedrückt wurde. Hier ist ein Beispiel, das auf einem Formular.
InformationsquelleAutor transistor1