Laden...

Per KeyPressEventArgs Tastenkombination Strg+F abfragen

Erstellt von itstata vor 15 Jahren Letzter Beitrag vor 15 Jahren 12.399 Views
I
itstata Themenstarter:in
302 Beiträge seit 2008
vor 15 Jahren
Per KeyPressEventArgs Tastenkombination Strg+F abfragen

Hallo,
ich würde gerne die Tastenkombination Strg+F abfangen. Leider weiß ich nicht, wie ich das mit der KeyCharnummer realisieren soll. Kann mir jemand bitte helfen?


private void Frm2_KeyPress(object sender, KeyPressEventArgs e)
    {
//das ist falsch
      if (e.KeyChar == (char)Keys.ControlKey && e.KeyChar == (char)Keys.F)
      {
// do something...



916 Beiträge seit 2008
vor 15 Jahren

Das sollte gehen...


if (e.Modifiers == Keys.Control && e.KeyValue == 70)
{
    //sourcecode here
}            

Again what learned...

I
itstata Themenstarter:in
302 Beiträge seit 2008
vor 15 Jahren

hallo KeyPressEventArgs kennt keinen value und leider auch keinen modifier.

S
64 Beiträge seit 2008
vor 15 Jahren

Hallo,

du könntest das ganze höchstens (wenn es geht) in das KeyDown-Event verschieben, hier geht dann folgendes:

if(e.Modifiers == Keys.Control && e.KeyCode == Keys.F)
{
I
itstata Themenstarter:in
302 Beiträge seit 2008
vor 15 Jahren

ah super, vielen danke.

916 Beiträge seit 2008
vor 15 Jahren

Jo das keydown event hat die entsprechenden flags in den event args.

Again what learned...

4.931 Beiträge seit 2008
vor 15 Jahren

Es geht auch im KeyPress-Event.
Alle Strg+<Buchstabe> werden als Werte von 1 bis 26 übergeben, d.h.
Strg+A = 1
..
Strg+F = 6
..
Strg+Z = 26


private void keypressed(object sender, KeyPressEventArgs e)
{
   if (e.KeyChar == (char)0x06) // Strg+F (ich benutze immer Hex-Werte dafür)
   {

   }
}