winform 怎么实现无边框阴影
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了winform 怎么实现无边框阴影相关的知识,希望对你有一定的参考价值。
参考技术A 通过设置窗体的 BackColor 和 Transparencykey 两个属性实现了窗体的透明,但是将一张带有透明效果的PNG图片赋给 BackgroundImage 属性时,【窗体上的图片区域无法透明!】,按我预想的效果应该是【图片区域就是图片本身的效果,因为窗体完全透明了】,而实际情况感觉像是窗体还有一层东西挡住了透明效果。当然通过设置窗体的 Opacity 属性可以更改窗体的透明度,但是这样一来窗体内包含的控件也就都跟着透明了。
winform 如何实现边框的阴影效果,就像360那种的,四周都有阴影。
参考技术A 你系统是什么版本?win7,还是xp?如果是系统版本大于等于winvisita,那么,几行代码即可实现
如果是xp,那么,就比较复杂了。追问
win7的系统,我需要说明下,如果你说的是这样的代码,那就算了:
protected override CreateParams CreateParams
get
CreateParams createParams = base.CreateParams;
createParams.ClassStyle |= 0x20000;
return createParams;
这种代码只能实现右边框和下边框的阴影
360的窗口,也只是左,下,右,三遍是阴影,而非全部。
而且,你贴的这种代码,必须要开启theme的系统服务,才有效果。
这个。。。呵呵!!!没有程序员会想到用这种方法的。
追答是啊,因为没有程序员会想着用winform去实现阴影效果吧
用winform的话,网上也有方法,用的是user32.dll和CreateParams,不过我都试了下,在2003下都没有效果,不知道在win7或vista下怎么样
winform里面没有那个属性,
wpf我知道怎么搞,我现在就想知道winform的,因为项目的要求就是winform-net2.0,用API的方法可以实现右边框和下边框的阴影,但是并不能实现4周都有阴影的效果!听别人说过用GID+可以实现,但是我怎么搞也没搞起来,渐变只在窗体内部看得出来,所以不行。
参考技术D【四边阴影】教你实现Winform窗体的四边阴影效果
http://bbs.cskin.net/forum.php?mod=viewthread&tid=61&fromuid=2
以上是关于winform 怎么实现无边框阴影的主要内容,如果未能解决你的问题,请参考以下文章