请教C#/WPF高手,类似点击头像出来相关wpf tooltip 样式菜单的功能是怎么实现的?

您所在的位置: &
WPF图标特殊效果实现方法
WPF图标特殊效果实现方法
WPF图标实现的效果可以根据具体程序编程中不同的需求来进行改变。比如我们这里要向大家介绍的显示标签效果和模糊效果的方法等。
开发工具的用途主要是体现在各种图形界面的显示方面。那么在使用的过程中,其中有很多技巧值得我们去深入研究。本篇将要实现图标的两个效果:1. 显示图标标签,2. 图标模糊效果。
在上一篇中提到Image没有HTML & img&的Title属性(在MSDN中也没找到类似的属性),所以本篇将自行制作一个标签,它的功能是当鼠标移动到图标上方时会显示该图标的Tag说明,并且该WPF图标模糊显示。
1. 在Home & Image&中加入MouseEnter和MouseLeave事件。
& Source=&image/home.png& 
Width=&110& Height=&110& 
Tag=&My Home&Canvas.Left=&30&
Canvas.Top=&20& 
Cursor=&Hand&  &
MouseEnter=&Image_BlurEffect_MouseEnter&  &
MouseLeave=&Image_BlurEffect_MouseLeave&&
2. 事件加好了,就要为添加内容了。先看Image_BlurEffect_MouseEnter事件:
private void Image_BlurEffect_MouseEnter(object sender,MouseEventArgs e)  &{  &//将sender定义为Image对象  &Image image = sender as I &//创建模糊BlurEffect对象  &BlurEffect newBlurEffect = new BlurEffect(); &//设定模糊效果值Radius  &newBlurEffect.Radius = 5; &//为Image添加Blur效果  &image.Effect = newBlurE &//将Image Tag内容传给imageTitle Textblock  &imageTitle.Text = & & + image.Tag.ToString() +& &; &//将imageTitle的Border设置为可见  &imageTitleBorder.Visibility = Visibility.V &//调整imageTitleBorder的Canvas位置,使其在图标下方显示  &Canvas.SetLeft(imageTitleBorder, Canvas.GetLeft(image)+ image.Width / 2 - 15);  &Canvas.SetTop(imageTitleBorder, 125);  &} &private void Image_BlurEffect_MouseLeave(object sender,MouseEventArgs e)  &{  &Image image = sender as I  &BlurEffect newBlurEffect = new BlurEffect();  &newBlurEffect.Radius = 0;  &image.Effect = newBlurE  &imageTitleBorder.Visibility = Visibility.C  &}&
可以使用ToolTipService。经过测试使用ToolTip可以实现标签的功能(代码如下),而且也不用预设WPF图标显示效果,但是没法通过Canvas设定其位置,大家可以都学习一下。
XAML: && Source=&image/home.png& Width=&110& Height=&110&  &Tag=&My Home& Canvas.Left=&30& Canvas.Top=&20&  &MouseEnter=&Image_BlurEffect_MouseEnter&  &MouseLeave=&Image_BlurEffect_MouseLeave&  &Cursor=&Hand&  &&  &&My Home&/TextBlock  &&/Image.ToolTip  &&/Image&
C#代码自然就简单多了:
private void Image_BlurEffect_MouseEnter(object sender,MouseEventArgs e)  &{  &Image image = sender as I  &BlurEffect newBlurEffect = new BlurEffect();  &newBlurEffect.Radius = 5;  &image.Effect = newBlurE  &}&
上面这些方法介绍的就是WPF图标显示效果的实现。【责任编辑: TEL:(010)】
关于的更多文章
WPF(Windows Presentation Foundation)是Microsoft用于Windows的
本次的专刊为大家提供了Oracle最新推出的Java SE 8详细的开发教程,从解读到探究Java 8最新
IE浏览器不支持很多CSS属性是出了名的,即便在支持的
又是一周匆匆而过。上周五、周六两天,2013年51CTO云
十一归来,貌似大家都没有什么劲头。本周五,为期两天
本书取材于各大IT公司历年面试真题(笔试、口试、电话面试、英语面试,以及逻辑测试和智商测试)。详细分析了应聘程序员(含网
51CTO旗下网站类似QQ的自拍头像上传头像功能源码&(已下载<strong style='color: #ff次)
已经到最后一张了!
- C#13:33- C#09:50- C#19:54- C#12:53
类似QQ的自拍头像上传头像功能源码
一款采用C#开发的源码,功能完整,界面美观,欢迎大家下载。
价格: 免费
累计评价:
HeadImageDemo
ESBasic.dll[378.50KB]
HeadImageDemo.exe[21.00KB]
HeadImageDemo.pdb[31.50KB]
HeadImageDemo.vshost.exe[11.34KB]
HeadImageDemo.vshost.exe.manifest[0.48KB]
OMCS.dll[744.00KB]
[634.56KB]
PaintFramework.dll[196.00KB]
Properties.Resources.Designer.cs.dll[4.50KB]
DesignTimeResolveAssemblyReferences.cache[24.76KB]
DesignTimeResolveAssemblyReferencesInput.cache[5.51KB]
HeadImageDemo.csproj.GenerateResource.Cache[1.11KB]
HeadImageDemo.exe[21.00KB]
HeadImageDemo.Form1.resources[0.18KB]
HeadImageDemo.HeadImageForm.resources[0.18KB]
HeadImageDemo.pdb[31.50KB]
HeadImageDemo.PhotoForm.resources[0.18KB]
HeadImageDemo.Properties.Resources.resources[8.79KB]
Properties
Settings.settings[0.24KB]
237_100.gif[9.40KB]
ESBasic.dll[378.50KB]
OMCS.dll[744.00KB]
[634.56KB]
PaintFramework.dll[196.00KB]
from.gif[2.69KB]
HeadImageDemo.sln[0.86KB]
最新Asp.Net源码下载.url[0.17KB]
现在很多下载客户端程序都需要设定自己头像的功能,而设定头像一般有两种方式:使用摄像头自拍头像,或者选择一个图片的某部分区域作为自己的头像。
(1)调用摄像头,捕获摄像头采集的视频,并将采集的视频绘制到UI上。
(2)从图片文件读取Image,并显示在控件上(这个相当easy)。
(3)在显示的视频或图片上,能够拖动一个正方形,以选择指定部分的区域作为自己的头像。
(4)从视频中截获一帧保存为图片。
(5)从图片中截取某个区域作为自己的头像。
  为了解决这些问题,就需要涉及到的技术有DirectX Show、、drawdib(位图绘制)、图像截取等。
责任编辑:灵雨飘零
相关商业代码
同类下载排行
263/267=98%
售出:9 套
上架时间:12-05
售出:7 套
上架时间:10-11
售出:7 套
上架时间:10-13
最新源码评论
收藏源码:
TYURL重写类库源码
常见技术问题&UIPower企业宣传片
求助啊!!!C#实现类似QQ中,鼠标移动到头像,旁边弹出个人信息图片框效果。
使用QQ时,当鼠标移动到QQ面板上的QQ头像时,旁边就会渐变出现个人信息框。然后鼠标移出QQ头像框,移动到这个个人信息框上,进行修改等等操作。
我想到的是通过MouseHover,MouseLeave事件。
当鼠标移动到QQ面板上的QQ头像时,触发MouseHover事件,然后弹出个人信息框。离开QQ头像框,就应该触发MouseLeave事件。如果鼠标没有移动到这个个人信息框上,那MouseLeave事件应对个人信息框进行Hide处理。
这个处理过程,不知道我理解有问题否。
当我自己写MouseHover事件中,对某一Form进行Show,但会出现闪烁,而且闪烁的还比较厉害。
不知道怎么解决啊,望各路高手解决啊!!!
同求,本人新手最近在做一个需要此功能的项目!
同求,本人新手最近在做一个需要此功能的羡慕!
<td class="t_msgfont" id="postmessage_,对主窗体(面板)双缓存处理
2,你说的显示/隐藏其实就是MouseHover的时候显示Panel(可以用Timer控制渐隐渐显)
但是要做的炫最好用WPF,比如迅雷7,QQ概念版
麻烦给点儿示例代码学习下。
再来个更狠的
全套开发文档
引用 7 楼 yul0416 的回复:
顶个啊。高手们快来吧
引用 8 楼 wenjie11533 的回复:
猩猩哥哥给你那么多你自己试了没? 不试在这嗷嗷叫!
只是一个简单的显示/隐藏面板的问题,有啥不给力的?
教程都贴上来了,自己不勤动手敲代码怎么能提高呢?
再贴一遍文档地址!
引用 3 楼 yalan 的回复:
1,对主窗体(面板)双缓存处理
2,你说的显示/隐藏其实就是MouseHover的时候显示Panel(可以用Timer控制渐隐渐显)
但是要做的炫最好用WPF,比如迅雷7,QQ概念版

我要回帖

更多关于 灌篮高手头像 的文章

 

随机推荐