我一直在使用基于C#的Windows窗体应用程序,并需要一些帮助。我正在尝试重新创建大多数Windows应用程序在表单失去焦点时到父表单时出现的窗口闪烁效果。最好的方式是打开计算器,打开帮助窗口,然后尝试单击计算器,此时帮助窗口会闪烁,失去和获得边缘阴影。
我已经成功地在父级被单击时恢复了子窗口的焦点,但这会创建一个奇怪的闪烁效果,因为父窗口暂时置于子窗口前面。我只是猜测,但我寻找的效果似乎是计算器从未置于帮助窗口之前,然后帮助窗口仅被激活和反激活几次。
我尝试过做一些搜索,看到了一些相关主题,但没有一个解决方案完全匹配。我对制作Windows窗体应用程序还比较新,所以有些事情我还不理解,请耐心等待我如果我一开始不理解某些内容。
提前感谢您!
关于计算器示例的详细说明:
1)从Windows附件中打开计算器 2)在工具栏中转到帮助选项卡并打开关于计算器的选项 3)单击计算器窗口 4)然后,关于计算器窗口将闪烁,但从未落后于计算器
我取得的唯一进展是:
我已经成功地在父级被单击时恢复了子窗口的焦点,但这会创建一个奇怪的闪烁效果,因为父窗口暂时置于子窗口前面。我只是猜测,但我寻找的效果似乎是计算器从未置于帮助窗口之前,然后帮助窗口仅被激活和反激活几次。
我尝试过做一些搜索,看到了一些相关主题,但没有一个解决方案完全匹配。我对制作Windows窗体应用程序还比较新,所以有些事情我还不理解,请耐心等待我如果我一开始不理解某些内容。
提前感谢您!
关于计算器示例的详细说明:
1)从Windows附件中打开计算器 2)在工具栏中转到帮助选项卡并打开关于计算器的选项 3)单击计算器窗口 4)然后,关于计算器窗口将闪烁,但从未落后于计算器
我取得的唯一进展是:
private void MainForm_Activated(object sender, EventArgs e)
{
if (Open == true)
{
//blink active window
_addForm.Activate(); //makes window active
}
}
“open”变量是我用来跟踪打开表单的状态的,当我展示另一个表单时,它会变为true。