Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/xslt/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用WPF播放圆形窗口电影_Wpf_Mediaelement_Shape - Fatal编程技术网

使用WPF播放圆形窗口电影

使用WPF播放圆形窗口电影,wpf,mediaelement,shape,Wpf,Mediaelement,Shape,使用WPF是否可以创建一个圆形窗口,并使用正在播放的电影作为背景?您可以使用画布作为父容器(设置为透明),然后添加一个带有媒体笔刷的圆形作为背景。应该可以了 您应该只需要在xaml中抛出如下内容: <Ellipse Height="80" Width="80"> <Ellipse.Fill> <VisualBrush TileMode="None"> <VisualBrush.Visual>

使用WPF是否可以创建一个圆形窗口,并使用正在播放的电影作为背景?

您可以使用画布作为父容器(设置为透明),然后添加一个带有媒体笔刷的圆形作为背景。应该可以了

您应该只需要在xaml中抛出如下内容:

<Ellipse Height="80" Width="80">
    <Ellipse.Fill>
        <VisualBrush TileMode="None">
            <VisualBrush.Visual>
                <MediaElement Source="myMovie.wmv" />
            </VisualBrush.Visual>
        </VisualBrush>
    </Ellipse.Fill>
</Ellipse>

实际上,把窗户弄圆会更困难。看一看,如果你想让窗户是圆的,它应该有助于找出那部分


HTH

要制作非矩形窗口,首先需要做三件事

  • 将Window.WindowStyle设置为WindowStyle.None
  • 将Window.allowsttransparency设置为True
  • 将Window.Background设置为透明(或{x:Null})

  • 现在,您的窗口是完全透明的。您可以使用此线程中的其他提示在窗口的几何体上绘制一块介质。

    不要使用AllowTransparency,它的性能非常差,并且存在许多兼容性问题,请转到此链接以获取替代方案:


    编辑:这里有一个例子,如何使用SetWindowRgn获得矩形窗口的圆角,如果你通过一个椭圆区域而不是一个圆形的矩形区域,你将得到一个椭圆窗口,很容易为你能想象的任何形状创建一个区域。

    我不知道这篇文章中的任何内容如何应用于这个问题或解决这个问题“允许透明”…他们还在画一个矩形窗口。