Laden...

Problem mit Tastaturereignis

Erstellt von Strauss vor 17 Jahren Letzter Beitrag vor 17 Jahren 1.961 Views
S
Strauss Themenstarter:in
20 Beiträge seit 2007
vor 17 Jahren
Problem mit Tastaturereignis

Ich möchte zu einer Form ein paar Tastaturereignisse hinzufügen. Dazu habe ich folgenden Code:


[code]
void FullScreenKeyDown(object sender, System.Windows.Forms.KeyEventArgs e)
{
	if (e.KeyCode == Keys.Right)
	{
		this.next();
	}
	else if(e.KeyCode == Keys.Left)
	{
		this.back();
	}
}
[/code]

Die funktioniert aber aus irgendweinem Grund allerdings nur, wenn ich die Pfeiltasten nach links oder rechts drücke, während ich dabei die Strg-Taste gedrückt halte. Kann mir jemand sagen, wie ich es hinbekomme, dass ich dabei nicht die Strg-Taste gedrückt halten muss?

738 Beiträge seit 2007
vor 17 Jahren
  1. schau mal mit einem Breakpoint, ob du wirklick in diesen EventHandler kommst, oder ob windows die richtige Aktion default mässig ausführt.

  2. this.KeyPreview = true;

Damit die Form die KeyEvents bekommt.

S
Strauss Themenstarter:in
20 Beiträge seit 2007
vor 17 Jahren

Die Eigenschaft KeyPreview habe ich schon auf true gesetzt. In den EventHandler komme ich lediglich, wenn ich die Stg-Taste gedrückt halte während ich auf eine der Pfeiltasten drücke.

S
Strauss Themenstarter:in
20 Beiträge seit 2007
vor 17 Jahren

Ich bin jetzt darauf gestoßen, dass die Eingabe der Pfeiltasten von den Komponenten von selbst geregelt wird. Kann ich dieses Verhalten irgendwie "deaktivieren"???

49.485 Beiträge seit 2005
vor 17 Jahren

Hallo Strauss,

in KeyDown bzw. PreviewKeyDown e.Handled = true

herbivore