代码之家  ›  专栏  ›  技术社区  ›  stevehipwell

如何禁用透明控件上的单击通过?

  •  1
  • stevehipwell  · 技术社区  · 14 年前

    我们的应用程序中有一个需要Google Earth背景图像的映射表单,由于您不能在面板下的浏览器中使用Google Earth插件,因此我们使用第二个表单来显示背景图像。我们在地图表单上有一个透明的面板,在这个面板上绘图,而Google Earth则在下面同步的表单上绘图。

    我们通过给窗体提供 255, 250, 250 并在绘制前将面板背景设置为此颜色。尽管现在在查看了在线可用的信息之后,面板似乎永远不应该获得游标事件。

    我认为这个问题是由于透明点击通过,但由于它在大多数情况下的工作,我不知道到底是怎么回事。我们已经更新了所有的图形驱动程序,看看客户机上是否有自定义设置,但这没有帮助。

    编辑
    添加了有关透明键的详细信息。

    2 回复  |  直到 14 年前
        1
  •  0
  •   Phil Wright    14 年前

    尝试在窗体窗口的WndProc中截取WM_HITTEST消息,当您知道它在客户端区域上方时,返回相应的HTCLIENT值。可能是默认窗口处理有时返回不同的值。

        2
  •  0
  •   Spiffy577    12 年前