2017-01-26 6 views
-4

So rufen Sie Form1.show() auf; über keydown So etwas wie diesesC# Form1 auf Keydown anzeigen

  message msg= new message(); 

private void Form1_KeyDown(object sender, KeyEventArgs e) 
    { 

     if (e.KeyCode == Keys.Enter) 
     { 
      msg.Show(); 
     } 
    } 

aber das ist für mich nicht funktioniert.

+0

Form1 sieht aus wie es zeigt bereits festgelegt. – LarsTech

+0

WENN form1 nicht erstellt wird oder nicht angezeigt wird oder nicht den Fokus hat, dass es keine Schlüsselereignisse empfangen kann, benötigen Sie einen globalen Tastatur-Hook oder empfangen Sie ihn über das fokussierte Formular. – Gusman

Antwort

-1

Ihr Code ist wahr, aber Sie sollten KeyPreview Eigentum Ihrer Form1 zu true erhöhen KeyDown Ereignis

+0

Bitte versuchen Sie dies zuerst, bevor Sie posten, Sie werden etwas Neues lernen. –

+0

Ich habe es versucht und ich benutze es jedes Mal. Hast du versucht? –

+0

Ja, tat ich. Du hast nicht. Die Eingabetaste ist speziell, wie Escape und die Cursortasten. KeyPreview ist eine VB6-Kompatibilitätseigenschaft, es hat die Navigationsschlüssel nicht abgefangen. Erwägen Sie, die Verwendung der AcceptButton-Eigenschaft des Formulars vorzuschlagen oder ProcessCmdKey() zu überschreiben. –

Verwandte Themen