wpf下,在aforge界面 画静态框的实现

本文介绍如何在WPF环境下使用AFoGe控件实现USB摄像头播放,并分享了在图像上绘制静态框的具体实现方法。文章通过示例代码展示了如何克服WPF下NewFrame事件无法使用的难题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

利用afoge控件可以来实现usb摄像头播放。在winform下,利用newframe事件,可以实现每一帧的图像处理。

但是如何在wpf下,利用afoge,则有些麻烦。

播放功能是利用

  1. xmlns:wfi ="clr-namespace:System.Windows.Forms.Integration;assembly=WindowsFormsIntegration"  

我现在需要在图像上画一个静态框,最初我也是想通过newframe,给每帧图像都换上框,但是在wpf下newframe无法加入。失败

另一种是 利用Panel.ZIndex,在aforge上面弄一个透明的image,发现wfi这个默认最上层。失败

最后只能用最笨的办法画框。代码如下

 xmlns:wf ="clr-namespace:System.Windows.Forms;assembly=System.Windows.Forms"
<Grid>
                <Grid.RowDefinitions>
                    <RowDefinition Height="*"/>
                    <RowDefinition Height="5"/>
                    <RowDefinition Height="9*"/>
                    <RowDefinition Height="5"/>
                    <RowDefinition Height="*"/>
                </Grid.RowDefinitions>
                <Grid.ColumnDefinitions>
                    <ColumnDefinition Width="*"/>
                    <ColumnDefinition Width="5"/>
                    <ColumnDefinition Width="9*"/>
                    <ColumnDefinition Width="5"/>
                    <ColumnDefinition Width="*"/>
                </Grid.ColumnDefinitions>
                <wfi:WindowsFormsHost Panel.ZIndex="1" Grid.ColumnSpan="5" Grid.RowSpan="3" Margin="-68,0,68,-69" Grid.Row="2">
                    <aforge:VideoSourcePlayer    x:Name="videoSourcePlayer1" Width="300" Height="360">
                    </aforge:VideoSourcePlayer>
                </wfi:WindowsFormsHost>
                <wfi:WindowsFormsHost Panel.ZIndex="2" Grid.Column="1" Grid.Row="1" Grid.RowSpan="3">
                    <wf:Label BackColor="Green"/>
                </wfi:WindowsFormsHost>
                <wfi:WindowsFormsHost Panel.ZIndex="2" Grid.Column="3" Grid.Row="1" Grid.RowSpan="3">
                    <wf:Label BackColor="Green"/>
                </wfi:WindowsFormsHost>
                <wfi:WindowsFormsHost Panel.ZIndex="2" Grid.Row="1" Grid.Column="1" Grid.ColumnSpan="3">
                    <wf:Label BackColor="Green"/>
                </wfi:WindowsFormsHost>
                <wfi:WindowsFormsHost Panel.ZIndex="2" Grid.Row="3" Grid.Column="1" Grid.ColumnSpan="3">
                    <wf:Label BackColor="Green"/>
                </wfi:WindowsFormsHost>
            </Grid>
  


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值