如何将我的应用程序窗口置于前台?例如,当我的应用程序需要关注时。
这是为我个人的程序。我需要那个功能。
这就是我得到的东西。但它并不总是有效。
public void BringToFrontToEnterCaptha()
{
if (InvokeRequired)
{
Invoke(new Action(BringToFrontToEnterCaptha));
}
else
{
this.TopMost = true;
this.Focus();
this.BringToFront();
this.textBox1.Focus();
this.textBox1.Text = string.Empty;
System.Media.SystemSounds.Beep.Play();
}
}
public void BringToBackAfterEnterCaptha()
{
if (InvokeRequired)
{
Invoke(new Action(BringToBackAfterEnterCaptha));
}
else
{
this.TopMost = false;
}
}
我从后台工作线程调用它们。
BringToFrontToEnterCaptha();
while (!ready)
{
Thread.Sleep(100);
}
BringToBackAfterEnterCaptha();
Thread.Sleep(300);
在按下“接受”按钮后,布尔变量“ready”将被设置为true。
它的效果很好,但并非总是如此。