Почему моя форма не получает смоделированную клавишу «Возврат» или нажатие клавиши? - PullRequest
0 голосов
/ 07 февраля 2019

Моя форма windows переходит на веб-сайт при запуске, и я также дал форме кнопку для входа на указанный веб-сайт.Моя проблема в том, что теперь я хочу, чтобы эта кнопка автоматически нажималась при запуске моей программы.Я дал кнопке индекс табуляции 0, чтобы я мог просто имитировать кнопку «ввод», когда она работает.Тем не менее, «ввод» не регистрируется в форме.Мой код выглядит следующим образом .. пс.Я использую InputSimulator, также известный как Windowsinput из Nuget (который работает на консолях), но не в формах

Я не хочу использовать метод отправки / получения

using System;
using System.Windows.Forms;
using System.Runtime.InteropServices;
using System.Drawing;
using WindowsInput.Native;
using WindowsInput;

namespace FormLogin
{
    class Program
    {
        [STAThread]
        static void Main()

        {
            var sim = new InputSimulator();
            Application.EnableVisualStyles();
            Application.SetCompatibleTextRenderingDefault(false);
            Application.Run(new Form1());
            sim.Keyboard.Sleep(3000).KeyDown((VirtualKeyCode.RETURN));
        }
    }
}

Фактические результаты - загрузка форм, кнопка ненажата Ожидаемые результаты - форма загружается, нажата клавиша ввода, и я вошел в систему.

1 Ответ

0 голосов
/ 07 февраля 2019

Я считаю, что вам нужно использовать KeyUp, а не KeyDown.KeyDown - это первое событие, которое запускается, но обычно это KeyUp (когда пользователь отпускает ключ), которое вызывает событие.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...