如何解决在 C# 中等待按键
我有一个 PuppeteerSharp 应用程序,它执行一些基本的浏览器自动化。 申请周期应如下所示:
- 启动浏览器 (Chrome)
- 获取搜索词
- 打开网址“google.ch”
- 在搜索输入中输入搜索词
- 按回车
- 等待任何应用程序中的左箭头键或右箭头键按下(其他按键不应有任何影响)
- 如果按下左箭头键,则执行一些逻辑
- 否则如果按下右箭头键,则执行一些逻辑
我的问题从第 6 步的步骤开始。我找不到等待左箭头键或右箭头键按下的方法。
这是我当前的带有一些伪代码的代码,我希望“按键等待”逻辑看起来像:
using System.Threading.Tasks;
using PuppeteerSharp;
namespace GoogleMapsChecker
{
internal class Program
{
private static async Task Main(string[] args)
{
// launch browser and save in variable
var browser = await Puppeteer.LaunchAsync(new LaunchOptions
{
Headless = false,ExecutablePath = @"C:\Program Files\Google\Chrome\Application\chrome.exe" // get path to chrome executable
});
var page = await browser.NewPageAsync();
var searchTerm = "searchTerm";
await page.GoToAsync("https://www.google.ch/");
await Task.Delay(5000);
//Click on google search Box
await page.ClickAsync(".gLFyf");
await page.Keyboard.SendCharacterasync(searchTerm);
await page.Keyboard.PressAsync("Enter");
Wait for KeyPress(LeftArrow || RightArrow)
{
if (KeyPress(LeftArrow))
{
//do stuff
}
else if (KeyPress(RightArrow))
{
//do other stuff
}
}
}
}
}
我怎样才能等到按下特定键,然后根据按下的键进一步动作?
更新: 你们中的一些人注意到了针对控制台应用程序的类似问题。我的应用程序是一个控制台应用程序,但即使我的程序不在焦点上,我也想检测按键。我尝试了参考问题的答案,但没有解决我的问题。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。