示例#1
0
        private void SimulateToggleKeyKeypress(KeyboardHelper.ToggleKey key)
        {
            sniffer.DeactivateHook();
            KeyboardHelper.PressKey(key);

            switch (key)
            {
            case KeyboardHelper.ToggleKey.NumLock:
                isNumLockOn = !isNumLockOn;
                break;

            case KeyboardHelper.ToggleKey.CapsLock:
                isCapsLockOn = !isCapsLockOn;
                break;

            case KeyboardHelper.ToggleKey.ScrollLock:
                isScrollLockOn = !isScrollLockOn;
                break;

            default:
                break;
            }

            sniffer.ActivateHook();
            SetToggleMenuButtonStates();
        }
示例#2
0
        private void StartCapture()
        {
            if (sniffer == null)
            {
                sniffer             = new KeySniffer(true);
                sniffer.KeyPressed += OnKeyPress;
            }

            sniffer.ActivateHook();
        }
示例#3
0
        public KeyboardForm()
        {
            FormToolTip = new ToolTip();

            InitializeComponent();
            FormsManager.RegisterMainForm(this);

            if (DpiInfo.Dpi < 96)
            {
                menu.Height = (int)(menu.Height * (96F / DpiInfo.Dpi));
                // Menu will always show even is fonts are set to less than 100%
            }
            else if (DpiInfo.Dpi > 96)
            {
                menu.Height = (int)(menu.Height * (DpiInfo.Dpi / 96F));
            }

            LoadUserSettings();

            ResizeToAspect();

            if (DpiInfo.Dpi != 96)
            {
                PositionKeyboardCombo();
            }

            // This needs to be done after location and size of this form are fully determined.
            FormsManager.OpenChildForms();

            lastSize = Size;

            GetKeyboardData();

            // Create event handlers
            ResizeEnd += KeyboardFormResizeEnd;
            KeyboardListCombo.SelectedIndexChanged += KeyboardListSelectedIndexChanged;

            MappingsManager.MappingsChanged         += OnMappingsChanged;
            UserColourSettingManager.ColoursChanged += OnColoursChanged;

            // Sniff for Caps/Num/Scroll lock keys being pressed while app doesn't have focus
            sniffer             = new KeySniffer();
            sniffer.KeyPressed += ReceiveKeyPress;
            sniffer.ActivateHook();

            Redraw();
        }