我在窗体中使用一个panel来播放视频,现在需要在视频上绘制图形,如何实现?
目前已偿试方案:
一、在视频上再添加一个透明panel,然后在panel中绘制图形,结果在用Graphic绘图后,无法透明的看到后面的视频
二、再建立一个窗体,设置窗体为透明,然后让窗体显示在视频播放区域上方,然后在窗体上绘图。问题是,窗体如何能完全跟踪主窗体的状态,即主窗体被移动,最小化或别的情况下,子窗体能完美伴随行动?

解决方案 »

  1.   

    第二种方法。
    在主窗体的move事件中添加子窗体移动。
    也就是将主窗体的LEFT和top赋值给子窗体。,当然这个子窗体的位置要通过主窗体来定位:
    就是通过某些计算,对主窗体的left和top值进行计算,然后赋值给子窗体。
    但这种办法个人不是很喜欢。你没法
      

  2.   

    将叠加的窗体使用SetWindowLong添加样式为“点击后不会使之激活”的样式,至于移动,这个可以在主播放窗体的Move事件里控制这个窗体。具体的可查扩展样式表。
      

  3.   

    用第二种方法, 主要是难于跟踪主窗体显示状态,而不是位置。比如,当主窗体最小化到任务栏上了,叠加窗体还在屏幕上,又比如,主窗体已经不是TopMost了,可是叠加窗体还在原位显示,这个如何解决?
      

  4.   

    好啊~ 谢谢楼上的 请发[email protected]