If statement 持续检查流程并显示按钮/文本框

If statement 持续检查流程并显示按钮/文本框,if-statement,process,vb.net-2010,hidden-field,form-load,If Statement,Process,Vb.net 2010,Hidden Field,Form Load,我正在尝试使用VB.Net创建一个表单,该表单检查IExplorer进程是否正在运行,然后显示一个RichTextBox,建议用户在进程=1时关闭IE,如果进程=0,则显示一个按钮继续下一个表单 这是容易的部分,困难的部分是,如果加载表单时进程=0,那么用户打开IE,我想删除按钮并显示RichTextBox,它建议用户关闭IE,如果他们关闭IE,按钮再次出现 我有一个按钮和RichTextBox,它的形式为“加载”,带有一个If语句,根据IE是否打开显示,但我无法让它们互换,如果IE关闭或打开,

我正在尝试使用VB.Net创建一个表单,该表单检查IExplorer进程是否正在运行,然后显示一个RichTextBox,建议用户在进程=1时关闭IE,如果进程=0,则显示一个按钮继续下一个表单

这是容易的部分,困难的部分是,如果加载表单时进程=0,那么用户打开IE,我想删除按钮并显示RichTextBox,它建议用户关闭IE,如果他们关闭IE,按钮再次出现

我有一个按钮和RichTextBox,它的形式为“加载”,带有一个If语句,根据IE是否打开显示,但我无法让它们互换,如果IE关闭或打开,任何帮助都将不胜感激

这是我为RTB和按钮加载的代码

aProc = Process.GetProcessesByName("iexplore")

If aProc.Length = 0 Then
    Dim b1 As New Button
    b1.Location = New System.Drawing.Point(274, 244)
    b1.Name = "btnOK"
    b1.Size = New System.Drawing.Size(75, 29)
    b1.TabIndex = 5
    b1.Text = "OK"
    b1.UseVisualStyleBackColor = False
    Me.Controls.Add(b1)
    AddHandler b1.Click, AddressOf btn_OK

Else
    Dim t1 As New RichTextBox
    t1.Location = New System.Drawing.Point(170, 233)
    t1.Name = "rtbMessage2"
    t1.ReadOnly = True
    t1.Font = New System.Drawing.Font("Arial", 9.75!, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
    t1.Size = New System.Drawing.Size(293, 40)
    t1.TabIndex = 5
    t1.Text = ("Internet Explorer is Running - Please Close Internet Explorer to Continue")
    Me.Controls.Add(t1)
    AddHandler t1.Click, AddressOf btn_OK
End If

我会作出两项改变:

添加一个持续调用逻辑显示/隐藏按钮/RichTextBox的计时器 使按钮和RichTextBox始终存在,但最初不可见。 为此,我将在加载时使用.Visible=false创建按钮和RichTextBox。然后创建一个每500毫秒+/-运行一次的计时器。该计时器将调用包含上述逻辑的函数。但是,与其使用该逻辑创建控件,不如引用它们并设置它们的可见性


本质上,只需创建一次控件,多次运行逻辑。

感谢您回复我,我正在考虑应用更改和建议,但语法方面有一些问题。