C# - Tastendruck

  • Themenstarter Themenstarter Dkl764
  • Beginndatum Beginndatum
ev. falsch KeyDown Ereignis gesetzt?
Ohne Code kann ich mir nur schwer vorstellen warum es nicht funktionieren sollte.

Wie ich oben schon beschrieb KeyPreview auf true und dann sollten die Tastedrücke normal über das KeyDown, KeyUp oder KeyPress Ereignis der Form laufen.
 
private Form1()
{
//Initiallierierung was da halt steht
KeyPreview = true;

}

private void Form1_KeyDown(object sender, KeyA... e)
{

If (e.KeyCode = Keys.M)
{
textbox1.Text = "Taste M gedrückt";
}

}


So steht es momentan drinne. Funktioniert aber nicht.
 
bitte genauer beschreiben was nicht funktioniert, meine Glaskugel ist in Reparatur.
Springt er denn beim debuggen in das KeyDown Ereignis?
Was steht im EventArgs beim Druck auf M? (ev. muss Shift noch gedrückt werden :confused: )

Und bitte den Code so posten wie du ihn wirklich hast.
 
ich nehm an, dass du die Methode Form1_KeyDown nicht über das Visual Studio anlegen lassen hast.

Wenn das so ist,
füge mal folgende Zeile in deinem Konstruktor unterhalb KeyPreview = true; ein:
C#:
this.KeyDown += new KeyEventHandler(Form1_KeyDown);

Du kannst die Eventmethoden (z.B. keydown()) über das VisualStudio automatisch einfügen lassen, dann ist die Zeile überflüssig. Das machst Du so:
Form im Designer öffnen -> rechte Maustaste -> Eigenschaften -> Events (kleiner blitz oben bei den Icons) -> Doppelklick auf das entsprechende Event.
 

Anhänge

  • VS.png
    VS.png
    9,9 KB · Aufrufe: 166
Zuletzt bearbeitet:
Ich denke mal, dass der TE die Sache nach 3 Jahren schon gelöst hat, zumindest hat er sich set damals in diesem Thread hier nicht wieder gemeldet. Lassen wir den Sarg also zu, ehe der Friedhofswärter schimpfend auftaucht.


Der Doc!
 
Zurück