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