Есть ли способ щелкнуть координаты в С# UWP?

Я пытаюсь создать приложение с автоматическим кликером, и мне было любопытно, есть ли реальный способ щелкнуть только с помощью шнуров x и y, и если да, то могу ли я сделать это за пределами окна? Я использую С# UWP.


person Shutdoor    schedule 21.03.2021    source источник
comment
Отвечает ли это на ваш вопрос? UWP: имитация щелчка по определенным координатам в Windows IoT   -  person Orace    schedule 21.03.2021
comment
К сожалению, это не так. Я не вижу ни одного места, где бы говорилось о приправах.   -  person Shutdoor    schedule 21.03.2021


Ответы (1)


Вы можете попытаться имитировать щелчок мышью с помощью API в разделе пространство имен Windows.UI.Input.Preview.Inject. И таким образом вы можете ввести щелчок мыши за пределами окна. Дополнительные сведения об имитации пользовательского ввода с помощью внедрения ввода см. в документ. Обратите внимание на добавление возможности inputInjectionBrokered. .

Пожалуйста, проверьте следующий код в качестве образца:

private void Button_Click(object sender, RoutedEventArgs e)
{
    InputInjector inputInjector = InputInjector.TryCreate();
    var infoPosition = new InjectedInputMouseInfo();
    infoPosition.MouseOptions = InjectedInputMouseOptions.Absolute;
    infoPosition.DeltaX = 50;
    infoPosition.DeltaY = 50;

    var infoDown = new InjectedInputMouseInfo();
    infoDown.DeltaX = 50;
    infoDown.DeltaY = 50;
    infoDown.MouseOptions = InjectedInputMouseOptions.LeftDown;

    var infoUp = new InjectedInputMouseInfo();
    infoUp.DeltaX = 0;
    infoUp.DeltaY = 0;
    infoUp.MouseOptions = InjectedInputMouseOptions.LeftUp;

    inputInjector.InjectMouseInput(new[] { infoPosition,infoDown, infoUp });
    for(int i=0;i<10;i++)
    {
        Thread.Sleep(3000);
        inputInjector.InjectMouseInput(new[] { infoPosition, infoDown, infoUp });

    }

}

Обратите внимание, что значения свойства DeltaX и свойства DeltaY относятся к последнему событию колесика мыши, вам необходимо установить свойство MouseOptions как InjectedInputMouseOptions.Absolute, чтобы указать, что координаты являются абсолютным значением.

person YanGu    schedule 22.03.2021