当焦点离开时,停止Firefox Flash退出全屏模式

时间:2012-12-19 03:26:15

标签: c# flash winapi firefox fullscreen

目前每当我使用firefox将Flash窗口置于全屏模式时,只要焦点离开Flash屏幕到我的“always on top”形式,flash立即退出全屏模式!即使我将表单设置为不在任务栏中显示,也会发生这种情况。现在必须有一些方法可以解决这个问题,因为类似的Java应用程序始终位于顶部时不会导致Flash播放器在Java程序丢失焦点时退出全屏模式。

有没有人对如何避免这种行为有任何想法?只需注意,这不会发生在Chrome中,只有Firefox。

1 个答案:

答案 0 :(得分:0)

您可以显示没有激活的表单。使用Win32扩展窗口样式 WS_EX_NOACTIVATE 可以实现这一点。

您必须覆盖Form的CreateParams属性才能设置此样式:

protected override CreateParams CreateParams
{
    get
    {
       CreateParams cp = base.CreateParams;
       cp.ExStyle |= 0x08000000/*WS_EX_NOACTIVATE*/;
       return cp;
    }
}

但请注意,此款式对表单有一些副作用,例如:在移动过程中它不再被绘制。