2010-06-09 35 views
7

我有一个需要在ActiveX对象上弹出的div盒,但它似乎是一个ActiveX对象有一个无限高的z-index,即使当我将该索引设置为低。我的div盒继续显示在ActiveX对象下。有任何想法吗?把一个div放在一个activeX对象中

回答

6

你会想要放置一个透明的iframe覆盖你想要掩盖的对象。

发现this例如你

+0

这是答案的一部分(使它透明不适用于我),但我最终使用jQuery显示/隐藏了具有div框的确切大小和位置的iframe,因为显示了div框或隐藏。谢谢你的帮助! – 2010-06-10 20:47:43

+0

很高兴能有所帮助。同样的问题在一段时间后提出来,我花了很长时间才弄清楚这一点。 – Laramie 2010-06-10 21:54:15

1

窗口的ActiveX的优点控制是they participate in overlapping 2-D layout

虽然修改的控制,使之无窗口可能是不切实际的。

编辑:

我发现a sample that demonstrate this using the flash player ActiveX control。 Flash可以在窗口模式和无窗口模式下使用。该示例可以轻松地在这些模式之间切换,并查看每个模式中重叠的div如何出现。

无窗口控件的实现方式不需要它们拥有自己的窗口。这意味着没有WindowProc,也没有专用的绘图表面。

而是通过实现IOleInPlaceObjectWindowless接收消息,并通过IOleInPlaceSiteWindowless获取GDI绘图上下文。

+0

这看起来不错!尽管在阅读之后,我仍然不确定如何实现无窗口ActiveX控件。 – 2010-06-10 17:37:14

相关问题