如题,我现在已经可以在Panel控件和PictureBox控件中显示出摄像机捕捉到的视频,我想在视频窗口中用鼠标画出一个距形,然后把距形的大小作为显示视频窗口的Panel控件或Picturebox控件大小显示出来!我用了很多方法也画不出距形来,可能是被视频遮住了。哪如何在视频上面用鼠标画出距形呢?不知道有没有办法办到,那位高手能解决吗?谢谢!
如果可以的话,给一些简单的例子或思路!!

解决方案 »

  1.   

    需要用directx来画普通的gdi是不可以的。
      

  2.   

    视频窗口的大小 是 可以通过调用 视频 播放器 的API 进行设定的, 楼主可以研究一下,不同的播放器 ,API 是不一样的
      

  3.   

    2楼的朋友,视频的大小我是知道怎么设置,我的问题是想设置用来播放视频的窗口(panel控件或picturebox控件)的大小
    比如:我现在用一个panel控件来显示视频,视频的大小是160x120,panel控件的大小是320x240,我在panel控件里用鼠标画一个180x160的距形,那我想把这个距形的大小作为panel控件的大小来显示播放视频窗口。即想把180x160代替320x240。但现在我又发现一个问题了,在panel控件用鼠标画距形时有4种画法,1.从左上向右下画,2.从右上向左下画,3.从左下向右上画,4.从右下向左上画。前2种画法得到的宽度和高度是正数,后2种画法得到的宽度和高度是负数。那把这宽度和高度用作panel控件的大小是不是要把负数的值转成正数再用呢?
      

  4.   

    显示视频可能会用到以下几个方法:
    IVideoWindow.put_Owner
    IVideoWindow.put_WindowStyle
    IVideoWindow.SetWindowPosition
    IVideoWindow.put_Visible
      

  5.   

    可以在视频帧图像画到panel面板之后进行矩形重画,每获取一条视频帧图处理一次,不过会有闪烁现象,解决闪烁现象的方法可以采用double buffer处理