WPF动画制作简单的按钮动画
主界面的代码
<StackPanel ButtonBase.Click="Grid_Click">
<Button Content="逐渐变大缩小"/>
<Button Content="鼠标移动特效" />
</StackPanel>
cs :
//这事件不做过多的解释有基础的一看就会明白
private void Grid_Click(object sender, RoutedEventArgs e)
{
object obj = e.OriginalSource;
Button butn = null;
if (obj is Button)
butn = obj as Button;
Type type = this.GetType();//获取当前实例
Assembly assembly = type.Assembly;//获取在其中声明的类型
//动态的实例化一个对象
Window win = (Window)assembly.CreateInstance(type.Namespace + "." + butn.Content.ToString());
win.Show(); }
下面进行第一个动画:
xaml界面
<Grid>
<Button Content="点击逐渐增长" Height="" HorizontalAlignment="Left" Margin="29,37,0,0" Name="btnGrow1" VerticalAlignment="Top" Width="" />
<Button Content="点击逐渐归位" Height="" HorizontalAlignment="Left" Margin="86,88,0,0" Name="btnBack" VerticalAlignment="Top" Width="" />
<Button Content="点击增长" Height="" HorizontalAlignment="Left" Margin="98,161,0,0" Name="btnGrow" VerticalAlignment="Top" Width="" />
</Grid>
cs:
public 逐渐变大缩小()
{
InitializeComponent();
//给button注册点击事件
btnGrow1.Click += new RoutedEventHandler(btnGrow1_Click);
btnBack.Click += new RoutedEventHandler(btnBack_Click);
btnGrow.Click += new RoutedEventHandler(btnGrow_Click);
}
//点击增长
void btnGrow_Click(object sender, RoutedEventArgs e)
{
DoubleAnimation widthAnimation = new DoubleAnimation() { By=,Duration=TimeSpan.FromSeconds(0.2) };
btnGrow.BeginAnimation(Button.WidthProperty, widthAnimation);
}
//还原动画
void btnBack_Click(object sender, RoutedEventArgs e)
{
DoubleAnimation widthAmination = new DoubleAnimation();
widthAmination.Duration = TimeSpan.FromSeconds();
DoubleAnimation heightAmimation = new DoubleAnimation();
heightAmimation.Duration = TimeSpan.FromSeconds();
btnGrow1.BeginAnimation(Button.WidthProperty, widthAmination);
btnGrow1.BeginAnimation(Button.HeightProperty, heightAmimation);
}
//逐渐增长事件
void btnGrow1_Click(object sender, RoutedEventArgs e)
{
DoubleAnimation widthAnimation = new DoubleAnimation()
{
To = this.Width - ,
Duration = TimeSpan.FromSeconds()
};
DoubleAnimation heightAnimation = new DoubleAnimation()
{
To=(this.Height-)/,
Duration=TimeSpan.FromSeconds()
};
btnGrow1.BeginAnimation(Button.WidthProperty, widthAnimation);
btnGrow1.BeginAnimation(Button.HeightProperty, heightAnimation);
}
WPF动画制作简单的按钮动画的更多相关文章
- Microsoft Expression Blend 4制作简单的按钮
在博客园混了这么久了,第一次写博客.本人标准的理工男,文笔不敢说一般,只能用还学过语文.勉强达意而已.见笑!! 由于本人能有有限,错误之处在所难免,望大牛们批评指正,共同进步.^_^!!!!!!!!! ...
- Laya的动画制作,整图动画,序列图动画,时间轴动画,龙骨动画
参考: Laya动画基础 Egret帧动画工具类 版本:2.1.1.1 序列图动画 白鹭的序列图动画,使用TexureMerger合图,然后使用MovieClip类播放. Laya的话,使用图集打包工 ...
- PhotoShop制作简单的文字动画--多媒体技术与应用
下面是最终实现的效果图: 1.新建图像,设置图像属性如下所示. 2.使用[横排文字工具]在背景图像上打上文字内容 3.[图层]——>[图层式样]——>[渐变叠加] 出现“图层样式”面板 4 ...
- 8款超酷而实用的CSS3按钮动画
1.CSS3分享按钮动画特效 这是一款基于CSS3的社会化分享按钮,按钮非常简单,提供了分享到twitter.facebook.youtube等大型社交网站.每一个分享按钮都有个大社交网站的Logo图 ...
- WPF编程,通过KeyFrame 类型制作控件线性动画的一种方法。
原文:WPF编程,通过KeyFrame 类型制作控件线性动画的一种方法. 版权声明:我不生产代码,我只是代码的搬运工. https://blog.csdn.net/qq_43307934/articl ...
- canvas制作简单动画
在画布元素<canvas>中,除了绘制图形.图像.文字外,还可以制作一些简单的动画,制作过程十分简单,主要分为两步操作: 1.自定义一个函数,用于图形的移动或其他动作. 2.使用setIn ...
- WPF 3D:简单的Point3D和Vector3D动画创造一个旋转的正方体
原文:WPF 3D:简单的Point3D和Vector3D动画创造一个旋转的正方体 运行结果: 事实上很简单,定义好一个正方体,处理好纹理.关于MeshGeometry3D的正确定义和纹理这里就不多讲 ...
- 简单的UIButton按钮动画效果iOS源码
这个是简单的UIButton按钮动画效果案例,源码,简单的UIButton按钮动画,可以自定义button属性. 效果图: <ignore_js_op> 使用方法: 使用时把ButtonA ...
- CSS3动画制作的简单示例
CSS3 大大强化了制作动画的能力,但是如果要做出图案比较复杂的动画,选择 GIF 依然是一个不错的选择.今天给大家介绍一个使用 CSS animation 配合雪碧图(CSS sprite)来制作动 ...
随机推荐
- 哪些情况会导致OOM
1. 堆溢出 java堆用于存储对象实例,只要不断地创建对象,并且这些对象不会被回收(什么情况对象不会被回收呢?如:由于GC Root到对象之间有可达路径,所以垃圾回收机制不会清除这些对象),那么,当 ...
- OpenCV-2.4.6-android-sdk 人脸识别demo搭建
最近项目需要研究下人脸识别,在领导推荐下准备研究OpenCV 一,上官网了解下 基本知识 http://docs.opencv.org/doc/tutorials/introduction/andro ...
- linux常用命令 ps
linux常用命令 ps Linux中的ps命令是Process Status的缩写.ps命令用来列出系统中当前运行的那些进程.ps命令列出的是当前那些线程的快照,就是执行ps命令的那个时刻的那些进程 ...
- 关于ros stage与navigation仿真总结5月16号
主要总结内容 在costmap里是怎么判断机器人和障碍物碰撞了 stage_ros包输入输出,stage是怎么回事 rviz 中footprint和stage中position怎么联系到一起 voxe ...
- apt-get常用命令及工作原理
https://blog.csdn.net/mosquito_zm/article/details/63684608
- Angular2响应式表单-翻译与概括官网REACTIVE FORMS页面
本文将半翻译半总结的讲讲ng2官网的另一个未翻译高级教程页面. 原文地址. 文章目的是使用ng2提供的响应式表单技术快速搭出功能完善丰富的界面表单组件. 响应式表单是一项响应式风格的ng2技术,本文将 ...
- Vue CLI3 关闭热替换后出现的warning
用vue cli3做项目的时候如果开启了typescript的严格模式,在dev server热替换的时候往往就会打出一大堆warning,严重的影响了编译效率.官方并没有提供关闭warning的ap ...
- onethink 插件模板定位
<?php // +---------------------------------------------------------------------- // | OneThink [ ...
- Web开发基础(读书笔记)
读书笔记:简单+基础 HTML(hyper Text Markup Language,超文本标记语言) URL(Uniform Resource Locator,统一资源定位器)构成3部分:协议/主机 ...
- HDU 2473 Junk-Mail Filter 【并查集删除】
Junk-Mail Filter Time Limit: 15000/8000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others ...