无法在vb.net中自动关闭消息框

时间:2016-02-17 10:13:10

标签: vb.net silktest

我正在使用VB.Net在Silk4Net中尝试一个简单的代码。我已经自动启动了一个计算器。在键入数字之前,会出现一个消息框。我无法找到自动关闭消息框的方法。我希望能够识别消息框并将其推到后面或完全解除它。

代码如下:

    <TestMethod()>
Public Sub TestMethod1()
    With _desktop.Window("Calculator")
        .SetActive()
        generateMsg()
        .PushButton("Clear").Select()
        .PushButton("3").Select()
        .PushButton("5").Select()
    End With

End Sub

Public Sub generateMsg()
    Thread.Sleep(2000)
    With _desktop.Window(MsgBox("Test", MsgBoxStyle.Critical, "Test"))
        For Each p As Process In Process.GetProcesses
            If p.MainWindowTitle.Contains("Test") Then
                p.Kill()
            End If
        Next

        'With .Dialog("Test")
        '    '.PushButton("OK").Select()

        'End With
        ' .Close()
    End With
End Sub

非常感谢任何帮助。感谢。

1 个答案:

答案 0 :(得分:-1)

更新回答

你可以为使用SendKeys.SendWait的代码添加一个计时器 - 就像这样 - 为你的测试环境调整一下,因为我不确定Silk4Net tbh

Dim WithEvents timer1 As New System.Timers.Timer
timer1.Interval = 5000
timer1.Enabled = True
MsgBox("Hello. I will go bye-bye in 5 seconds.")
timer1.Enabled = False

作为一个单独的子

Private Sub Timer1_Tick(sender As Object, e As EventArgs) Handles timer1.Elapsed
    SendKeys.SendWait("{ENTER}")
End Sub