【问题标题】:Visual Studio 2012 ALT+Number Sendkeys Doesn't WorkVisual Studio 2012 ALT+数字发送键不起作用
【发布时间】:2017-04-02 06:34:26
【问题描述】:

您好,我正在制作一个 vs2012 项目,当计时器达到 10 秒时,程序将发送 ALT+2。 F1 单独与 sendkeys 一起使用,但不能与 ALT TAB 或 ALT+Number 一起使用。以下是我尝试过的一些代码,但它不起作用。

    If mintCount = 16 Then SendKeys.Send("%2")
    If mintCount = 16 Then SendKeys.Send("%(2)")
    If mintCount = 16 Then SendKeys.Send("(%2)")
    If mintCount = 16 Then SendKeys.Send("%{2}")
    If mintCount = 16 Then SendKeys.Send("%{TAB}")

任何建议或提示将不胜感激,非常感谢..

【问题讨论】:

    标签: vb.net visual-studio-2012 sendkeys


    【解决方案1】:

    您可以使用我的InputHelper 课程。它 P/调用 WinAPI 的本机 SendInput() 函数。它比SendKeys 更灵活,还支持更广泛的键集!

    编辑(2019-09-20)

    InputHelper 早就被移到了自己的库中。答案已更新以反映这一变化。

    从 GitHub 下载 InputHelper:
    https://github.com/Visual-Vincent/InputHelper/releases

    用法:

    InputHelper.Keyboard.SetKeyState(Keys.Alt, True) 'True = Hold ALT key down.
    InputHelper.Keyboard.PressKey(Keys.D2) 'Press "2".
    InputHelper.Keyboard.SetKeyState(Keys.Alt, False) 'False = Release ALT key.
    

    【讨论】:

    • 感谢您的回复。抱歉,我对 Vb 编程还是新手,我应该在哪里放置或如何创建 InputHelper.vb 代码?当我将它粘贴到 Form1.vb 时,它给了我错误。我想我必须创建一个单独的 vb 文件并将使用代码调用到 form1.vb 但我很困惑。请帮忙
    • @Snoopy :是的,它是一个单独的文件(因此是 .vb 扩展名)。如果您使用 Visual Studio,请右键单击 Solution Explorer 中的项目并转到 Add > New Item...OR 按键盘上的 CTRL + SHIFT + A。在打开的窗口中选择Class 并将其命名为InputHelper.vb,然后删除其中的自动生成代码并用我的代码替换它。
    【解决方案2】:

    改用keyboard.sendkeys:

    My.Computer.Keyboard.SendKeys("%{TAB}", True)

    这应该将 alt 选项卡发送到活动窗口,布尔值指定是否暂停应用程序,直到处理完击键。

    【讨论】:

    • 仅供参考 SendKeysKeyboard.SendKeys 本质上是相同的。
    • 我想知道,我尝试了这段代码,它确实是问题所在。知道什么可能会给他带来问题吗?
    • 不知道,但他不是第一个……非常少见,不过SendKeys在某些电脑上好像不行。
    • 提示:当你写评论时通知某人(除非你写在那个人的问题或答案上)在某处写@username文本。 username 是此人的用户名,不包含空格。例如:@VisualVincent。
    • 另外,在注释中编写代码时,您可以使用反引号 (`) 将其转义,如下所示:`code here`。例如:TextBox1.Text = "Hello World"。 -- 更多信息见formatting and markdown help
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-08-15
    • 2023-03-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多