关于silverlight动画问题

lcp147572931 2010-07-20 12:35:43
下面这段代码 是写的让一张图片变大及还原的方法 用动画实现 用 bool largen 的值 来判断是鼠标移入放大 还是 鼠标离开 还原大小 但是问题是 都缺少一个 daX.From和 daY.From 所以每次都是从1.0放大到1.8 或者从1.8 还原到1.0 我想实现那种效果 比如 鼠标移上去 图片 放大到1.3倍的时候(没到1.8倍) 鼠标突然离开 能从1.3倍还原到1.0原始大小 同理 也可以从上一次动画缩放到 1.2倍时 鼠标 再次移入 From 1.2 To 1.8 其实 就是记住鼠标移入移出时 当前的图片大小倍数 请高手 帮忙解答下

private void ChangeScale(Image img, bool largen)
{
Storyboard sb = new Storyboard();
DoubleAnimation daX = new DoubleAnimation();
DoubleAnimation daY = new DoubleAnimation();
ScaleTransform DoTransformX = new ScaleTransform();
ScaleTransform DoTransformY = new ScaleTransform();
daX.Duration = new Duration(new TimeSpan(0, 0, 0, 4));
daY.Duration = new Duration(new TimeSpan(0, 0, 0, 4));
if (largen == true)
{
daX.To = daY.To = 1.8;
}
else
{
daX.To = daY.To = 1.0;
}
//temp = daX.To.Value;
Storyboard.SetTarget(daX, img);
Storyboard.SetTargetProperty(daX, new PropertyPath("(UIElement.RenderTransform).(CompositeTransform.ScaleX)"));
img.RenderTransform = DoTransformX;
Storyboard.SetTarget(daY, img);
Storyboard.SetTargetProperty(daY, new PropertyPath("(UIElement.RenderTransform).(CompositeTransform.ScaleY)"));
img.RenderTransform = DoTransformY;
sb.Children.Add(daX);
sb.Children.Add(daY);
sb.Begin();

}
...全文
144 9 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
Sunpire 2010-07-29
  • 打赏
  • 举报
回复
LZ,你把用 Blend 生成的 Storyboard 的 XAML 移到 Resources 中,并起一个名字, 这样在代码中调出 Storyboard 后,
通过指定 Storyboard 中不同的 Storyboard.TargetName 不就可以实现用在多个不同的图片上的要求了么?
jv9 2010-07-29
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 lcp147572931 的回复:]
用Blend我已经实现这个功能了 但是不够灵活 如果多加几张图片的话 又要重新设置 所以我想用C#写代码 然后在别的地方调用就行了
[/Quote]

实现动态代码实现肯定会比Xaml繁琐,你说的Blend实现后不灵活是怎么确定的呢?添加图片,可以使用绑定,不一定每次都要重新设置的。
lcp147572931 2010-07-22
  • 打赏
  • 举报
回复
用Blend我已经实现这个功能了 但是不够灵活 如果多加几张图片的话 又要重新设置 所以我想用C#写代码 然后在别的地方调用就行了
cpt_adt2010 2010-07-22
  • 打赏
  • 举报
回复
貌似你想实现复杂动画,又不想用Blend,纯代码的资料很难找哦
lcp147572931 2010-07-22
  • 打赏
  • 举报
回复
自己顶上去
lcp147572931 2010-07-21
  • 打赏
  • 举报
回复
。。。。都没人解答
lcp147572931 2010-07-20
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 sunpire 的回复:]

在Xaml中设置更方便吧,使用 Blend 应不难弄出来
[/Quote]
关键是我想后期 添加很多图片 就调用一个方法 灵活点
Sunpire 2010-07-20
  • 打赏
  • 举报
回复
在Xaml中设置更方便吧,使用 Blend 应不难弄出来
vivian_liu123 2010-07-20
  • 打赏
  • 举报
回复
关注!
C#开发WPF/Silverlight动画及游戏系列教程(Game Tutorial)目录 本系列教程目录如下: C#开发WPF/Silverlight动画及游戏系列教程(Game Tutorial):(一)让物体动起来① C#开发WPF/Silverlight动画及游戏系列教程(Game Tutorial):(二)让物体动起来② C#开发WPF/Silverlight动画及游戏系列教程(Game Tutorial):(三)让物体动起来③ C#开发WPF/Silverlight动画及游戏系列教程(Game Tutorial):(四)实现2D人物动画① C#开发WPF/Silverlight动画及游戏系列教程(Game Tutorial):(五)实现2D人物动画② C#开发WPF/Silverlight动画及游戏系列教程(Game Tutorial):(六)完美移动 C#开发WPF/Silverlight动画及游戏系列教程(Game Tutorial):(七)传说中的A*寻径算法 C#开发WPF/Silverlight动画及游戏系列教程(Game Tutorial):(八)完美实现A*寻径动态动画 C#开发WPF/Silverlight动画及游戏系列教程(Game Tutorial):(九)2D游戏角色在地图上的移动 C#开发WPF/Silverlight动画及游戏系列教程(Game Tutorial):(十)斜度α地图的构造及算法 C#开发WPF/Silverlight动画及游戏系列教程(Game Tutorial):(十一)地图遮罩层的实现 C#开发WPF/Silverlight动画及游戏系列教程(Game Tutorial):(十二)神奇的副本地图 C#开发WPF/Silverlight动画及游戏系列教程(Game Tutorial):(十三)牵引式地图移动模式① C#开发WPF/Silverlight动画及游戏系列教程(Game Tutorial):(十四)精灵控件横空出世!① C#开发WPF/Silverlight动画及游戏系列教程(Game Tutorial):(十五)精灵控件横空出世!② C#开发WPF/Silverlight动画及游戏系列教程(Game Tutorial):(十六)牵引式地图移动模式② C#开发WPF/Silverlight动画及游戏系列教程(Game Tutorial):(十七)完美精灵之八面玲珑(WPF Only)① C#开发WPF/Silverlight动画及游戏系列教程(Game Tutorial):(十八)完美精灵之八面玲珑(WPF Only)② C#开发WPF/Silverlight动画及游戏系列教程(Game Tutorial):(十九)完美精灵之八面玲珑(WPF Only)③ C#开发WPF/Silverlight动画及游戏系列教程(Game Tutorial):(二十)第一部分拓展小结篇 C#开发WPF/Silverlight动画及游戏系列教程(Game Tutorial):(二十一)主位式地图移动模式 C#开发WPF/Silverlight动画及游戏系列教程(Game Tutorial):(二十二)重构 - 让代码插上翅膀飞翔 C#开发WPF/Silverlight动画及游戏系列教程(Game Tutorial):(二十三)自适应性窗口化与全屏化 C#开发WPF/Silverlight动画及游戏系列教程(Game Tutorial):(二十四)Be careful!前方怪物出没 C#开发WPF/Silverlight动画及游戏系列教程(Game Tutorial):(二十五)完美捕获精灵之神器 -- HitTest C#开发WPF/Silverlight动画及游戏系列教程(Game Tutorial):(二十六)通用型角色头像面板 C#开发WPF/Silverlight动画及游戏系列教程(Game Tutorial):(二十七)战斗前夜之构建动态障碍物系统 C#开发WPF/Silverlight动画及游戏系列教程(Game Tutorial):(二十八)经典式属性设计及完美的物理攻击系统 C#开发WPF/Silverlight动画及游戏系列教程(Game Tutorial):(二十九)人工智能(AI)之追踪者 C#开发WPF/Silverlight动画及游戏系列教程(Game Tutorial):(三十)大法师 - 华丽经典之轮回 C#开发WPF/Silverlight动画及游戏系列教程(Game Tutorial):(三十一) 超酷万变的矢量魔法 C#开发WPF/Silverlight动画及游戏系列教程(Game Tutorial):(三十二) 雷、混、冰、毒、火、风 - 幻化中的魔法魅力! C#开发WPF/Silverlight动画及游戏系列教程(Game Tutorial):(三十三) 锦上添花之魔法特效装饰 C#开发WPF/Silverlight动画及游戏系列教程(Game Tutorial):(三十四) 地图编辑器诞生啦! C#开发WPF/Silverlight动画及游戏系列教程(Game Tutorial):(三十五) 地图编辑器的初步使用 C#开发WPF/Silverlight动画及游戏系列教程(Game Tutorial):(三十六) 地图自定义切片与导出 C#开发WPF/Silverlight动画及游戏系列教程(Game Tutorial):(三十七) 地图自适应区域加载 C#开发WPF/Silverlight动画及游戏系列教程(Game Tutorial):(三十八) 地图间的传送与切换 摘自博客园深蓝色右手文章(原文链接:http://www.cnblogs.com/alamiye010/archive/2009/06/17/1505346.html) 压缩包内的2个文件,chm和exe格式内容一样

8,757

社区成员

发帖
与我相关
我的任务
社区描述
WPF/Silverlight相关讨论
社区管理员
  • WPF/Silverlight社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧