2016-12-19 3 views
0
private void Form1_KeyDown(object sender, KeyEventArgs e) 
    { 
     if (e.Shift) 
     { 
      PDiff = 20; 
     } 
     if (e.Control) 
     { 
      PDiff = 30; 
     } 
     if (e.Alt) 
     { 
      PDiff = 40; //opens up a drop down menu if not pressed first 

     } 
    } 

ОК, так что моя программа на 100% завершена, но у меня есть сбой, где половина времени e.Alt делает то, что мне нужно, и в другой половине времени она открывает нерелевантное выпадающее меню , Неактуальное выпадающее меню обычно появляется, когда я нажимаю shift или control перед alt.Как предотвратить keydown e.alt от открытия нерелевантного выпадающего меню?

(Меню Restore> Переместить> Размер> Свернуть> Развернуть> Закрыть кстати)

мне сказали, что изменение порядка кода помогло бы, но он либо не работает, или я не сделал понять, что они имели в виду.

Любая помощь будет оценена!

+0

http://stackoverflow.com/questions/15090994/disable-normal-behavior-of-alt-key возможно – stuartd

ответ

0

В таких случаях вы должны установить логическое свойство KeyEventArgs.Handled на true. При этом вы можете указать, что поведение по умолчанию должно быть опущено.

Я не совсем уверен, что он решит эту проблему, хотя у меня нет возможности проверить ее в настоящее время.

Смежные вопросы