Exemplo n.º 1
0
 /// <summary>
 /// обработка события KeyDown дла панели ввода WritePanel
 /// для отслеживания нажатия на клавиши CapsLock и Shift
 /// </summary>
 /// <param name="sender"></param>
 /// <param name="e"></param>
 private void WritePanel_KeyDown(object sender, KeyEventArgs e)
 {
     if (flagStart) // если нажата кнопка "Старт"
     {
         // определяем кнопку по клавише
         ButtonDouble tempButton = GetButtons(e);
         // если кнопка определилась
         if (tempButton.self != null && tempButton.shift != null)
         {
             // если включен CapsLock
             if (Keyboard.IsKeyToggled(Key.CapsLock))
             {
                 // если нажат Shift
                 if (Keyboard.IsKeyDown(Key.LeftShift) || Keyboard.IsKeyDown(Key.RightShift))
                 {
                     Letters_Small_Symbols(); //регистр букв - нижний, цифровой ряд - символы
                 }
                 else
                 {
                     Letters_Big_Digit(); // регистр букв - верхний, цифровой ряд - цифры
                 }
             }
             else // если CapsLock выключен
             {
                 // если нажат Shift
                 if (Keyboard.IsKeyDown(Key.LeftShift) || Keyboard.IsKeyDown(Key.RightShift))
                 {
                     Letters_Big_Symbols(); // регистр букв - верхний, цифровой ряд - символы
                 }
                 else
                 {
                     Letters_Small_Digit(); // регистр букв - нижний, цифровой ряд - цифры
                 }
             }
             // если это не клавиши CapsLock, Ctrl, Win, Alt
             if (e.Key.ToString() != "Capital" &&
                 !e.Key.ToString().Contains("Ctrl") &&
                 !e.Key.ToString().Contains("Win") &&
                 !e.Key.ToString().Contains("Alt"))
             {
                 // меняем цвет фона на белый
                 tempButton.self.Background  = Brushes.White;
                 tempButton.shift.Background = Brushes.White;
             }
         }
     }
 }
Exemplo n.º 2
0
 /// <summary>
 /// обработка события KeyUp для панели ввода WritePanel
 /// </summary>
 /// <param name="sender"></param>
 /// <param name="e"></param>
 private void WritePanel_KeyUp(object sender, KeyEventArgs e)
 {
     if (flagStart) // если нажата кнопка "Старт"
     {
         // определяем кнопку по клавише
         ButtonDouble tempButton = GetButtons(e);
         // если кнопка определилась
         if (tempButton.self != null && tempButton.shift != null)
         {
             // если включен CapsLock
             if (Keyboard.IsKeyToggled(Key.CapsLock))
             {
                 // если отжат Shift
                 if (Keyboard.IsKeyUp(Key.LeftShift) || Keyboard.IsKeyUp(Key.RightShift))
                 {
                     Letters_Big_Digit(); // регистр букв  - верхний, цифровой ряд - цифры
                 }
                 else
                 {
                     Letters_Small_Digit(); // регистр букв - нижний, цифровой ряд - цифры
                 }
             }
             else // если CapsLock выключен
             {
                 // если отжат Shift
                 if (Keyboard.IsKeyUp(Key.LeftShift) || Keyboard.IsKeyUp(Key.RightShift))
                 {
                     Letters_Small_Digit(); // регистр букв - нижний, цифровой ряд - цифры
                 }
                 else
                 {
                     Letters_Big_Symbols(); // регистр букв - верхний, цифровой ряд - сиволы
                 }
             }
             // возвращаем цвет фона
             tempButton.self.Background  = tempButton.self.BorderBrush;
             tempButton.shift.Background = tempButton.shift.BorderBrush;
         }
         tempButton.self  = null;
         tempButton.shift = null;
     }
 }