原文:零元学Expression Blend 4 - Chapter 15 用实例了解互动控制项「Button」I

本章将教大家如何更改Button的预设Template,以及如何在Button内设置动画。

?

本章将教大家如何更改Button的预设Template,以及如何在Button内设置动画。

?

?

?

01

开启一个新专案,并且置入一个Button,调整到适当大小

?

在Properties->可以调整Button的外观,基本设定都跟先前的教学雷同

不熟的人请看如何用Blend制作一张猴子脸

?

范例调整了:

BorderThickness(Left及Right皆为10)

BorderBrush->Gradient brush->0%(#FFA3AEB9)、37.5%(#FF718597)、100%(#FF000000)

?

按F5来看看效果

按一按Button,你会发现,Mouseover以及Pressed都是蓝色的,这个是多数工具预设的颜色

?

?

02

有时候为了设计整体的需要,会不喜欢Mouseover以及Pressed时呈现的颜色都为蓝色

接下来,要教大家如何把Button修改成我们想要的样子

?

请重新拖拉一个新的Botton到主要工作区後,先调整我们想要的一般外观(Normal)

接着,在Button上单击右键->Edit Template->Edit a Copy

?

出现Create Style Resource->请命名後直接点击OK

?

接着点选左上角的State(如果没有开出State的朋友,可以在Top Menu->State把它勾选出来即可)

?

可以看到有几个状态可以设定:

Normal:一般状态

MouseOver:滑鼠移上去时的状态

Pressed:当点击滑鼠左键时的状态

Disabled:无法点击时的状态

?

现在我们来修改MouseOver时的颜色

请单击MouseOver前的小圆点,进入修改状态,这时你的主要工作区应该会有与设计动画时相同的录影红线外框

点选Properties->Edit修改颜色

(Pressed也是以同样方式修改)

?

修改完成後,可以点选下面两个地方,离开修改样版模式

?

按照惯例,按下F5观看成果,看看是不是已经非预设的样式了呢?

?

03

最後,以简单又快速的方式教大家如何活用刚刚所学的Edit Template结合动画制作

延续使用刚刚修改的Button,所以这次单击右键後,选Edit Current,就会回到刚刚的画面

?

在还没进入修改状态下,从Assets->shapes放入一个名为Ring的空心同心圆,并且调整到适当的大小

Properties下可以修改Ring的外观(颜色、大小、边宽),较为一般shapes通用的我就不多介绍了

?

空心同心圆的大小使用ArsThickness做调整

另外,我为了等等旋转的动画效果可以看出Ring的旋转,所以我帮它开了个口

我使用的是Properties->Appearance->StartAngle

?

都制作完成以後,请记得把Ring的Opacity设定为0%

(目的在於一般状态下不会出现的物件,需为不可视)

制作Button动画的前置作业已经差不多了

?

再来跟刚刚我们修改颜色的方式一样,单击MouseOver前的小圆点进入修改模式

0秒->Ring的Opacity100%

1秒->Ring拉到Button右边後,请记得调整Y轴为0(保持Y轴水平移动)

若是对Transform不熟的朋友,请参考这篇(Chapter 5 2.5D转换的使用技巧)

?

完成後,按下F5来看看成果

?

04

通常我们在制作Button时,会希望使用者能够注意到滑鼠已经移动到Button,或是希望使用者特别点击某个Button

所以连预设的样式,也把Mouseover以Pressed做些微的变化

如果能善加运用Template以及Animation,对使用者在界面操作来说,会有不一样的视觉以及操作体验

?

?

共勉之~

?

?

?

本篇的教学就到此。

?

?

(若有任何错误的地方,请各位前辈或同好能不吝指教,小女子都会虚心接受;若是你喜欢我的教学,请给我点鼓励,谢谢。)

?

?

一步一步迈向HIE之路

喜欢我文章请推我一下或给我个回应,你的鼓励会给我无限的动力喔!

若是您有其他问题或是特别需要,请在文章回应处留言,我会尽快回覆您

 

零元学Expression Blend 4 - Chapter 15 用实例了解互动控制项「Button」I的更多相关文章

  1. 零元学Expression Blend 4 - Chapter 16 用实例了解互动控制项「Button」II

    原文:零元学Expression Blend 4 - Chapter 16 用实例了解互动控制项「Button」II 本章将教大家如何制作自己的Button,并以玻璃质感Button为实作案例. ? ...

  2. 零元学Expression Blend 4 - Chapter 18 用实例了解互动控制项「CheckBox」II

    原文:零元学Expression Blend 4 - Chapter 18 用实例了解互动控制项「CheckBox」II 延续上一章的CheckBox教学,本章将以实作继续延伸更灵活的运用CheckB ...

  3. 零元学Expression Blend 4 - Chapter 17 用实例了解互动控制项「CheckBox」I

    原文:零元学Expression Blend 4 - Chapter 17 用实例了解互动控制项「CheckBox」I 本章将教大家如何运用CheckBox做实作上的变化:教你如何把CheckBox变 ...

  4. 零元学Expression Blend 4 - Chapter 12 用实例了解布局容器系列-「Viewbox」

    原文:零元学Expression Blend 4 - Chapter 12 用实例了解布局容器系列-「Viewbox」 本系列将教大家以实做案例认识Blend 4 的布局容器,此章介绍的布局容器是Bl ...

  5. 零元学Expression Blend 4 - Chapter 11 用实例了解布局容器系列-「Border」

    原文:零元学Expression Blend 4 - Chapter 11 用实例了解布局容器系列-「Border」 将教大家以实做案例认识Blend 4 的布局容器,此章介绍的布局容器是Blend ...

  6. 零元学Expression Blend 4 - Chapter 8 用实例了解布局容器系列-「Grid」

    原文:零元学Expression Blend 4 - Chapter 8 用实例了解布局容器系列-「Grid」 本系列将教大家以实做案例认识Blend 4 的布局容器,此章介绍的是Blend 4 里的 ...

  7. 零元学Expression Blend 4 - Chapter 14 用实例了解布局容器系列-「Pathlistbox」II

    原文:零元学Expression Blend 4 - Chapter 14 用实例了解布局容器系列-「Pathlistbox」II 本章将延续上一章的范例,步骤解析. 本章将延续上一章的范例,步骤解析 ...

  8. 零元学Expression Blend 4 - Chapter 13 用实例了解布局容器系列-「Pathlistbox」I

    原文:零元学Expression Blend 4 - Chapter 13 用实例了解布局容器系列-「Pathlistbox」I 本系列将教大家以实做案例认识Blend 4 的布局容器,此章介绍的布局 ...

  9. 零元学Expression Blend 4 - Chapter 10 用实例了解布局容器系列-「StackPanel」

    原文:零元学Expression Blend 4 - Chapter 10 用实例了解布局容器系列-「StackPanel」 本系列将教大家以实做案例认识Blend 4 的布局容器,此章介绍的布局容器 ...

随机推荐

  1. [React] Recompose: Override Styles & Elements Types in React

    When we move from CSS to defining styles inside components we lose the ability to override styles wi ...

  2. Opencv Surf算子中keyPoints,描述子Mat矩阵,配对向量DMatch里都包含了哪些好玩的东东?

    Surf算法是一把牛刀,我们可以很轻易的从网上或各种Opencv教程里找到Surf的用例,把例程中的代码或贴或敲过来,满心期待的按下F5,当屏幕终于被满屏花花绿绿的小圆点或者N多道连接线条霸占时,内心 ...

  3. [Angular] Dynamic components with ComponentFactoryResolver

    To create a component dynamicly. 1. Add a container with ref: @Component({ selector: 'app-root', tem ...

  4. IT增值服务实践心得体会:企业客户的钱比个人客户好赚得多

    友情提示 本人喜欢直言不讳,不喜欢拐弯抹角.喜欢从客观和主观.自身和他人等多种角度去探讨问题.如有不当之处,欢迎吐槽. 若干心得体会1.企业客户的钱更好赚,个人客户的钱很难.  为什么这么说呢? a. ...

  5. 在jsp页面里面设置全局引用文件

    head.jsp文件 将项目中所需要用到次数比较多的的插件,库等,同意放在一个jsp文件里面,命名为head.jsp文件,相当于一个全局的 <%@ page language="jav ...

  6. eclipse上springCloud分布式微服务搭建-干货

    一.创建maven父工程(pom) pom.xml如下: eureka: client: registerWithEureka:false fetchRegistry:false serviceUrl ...

  7. boost::any在降低模块之间耦合性的应用

    作者:朱金灿 来源:http://blog.csdn.net/clever101 在开发大型系统中,遵循这样一个原则:模块之间低耦合,模块内高内聚.比如系统中模块有界面模块和算法模块两种,一般是界面模 ...

  8. WPF中PasswordBox控件的Password属性的数据绑定

    原文:WPF中PasswordBox控件的Password属性的数据绑定 英文原文:http://www.wpftutorial.net/PasswordBox.html 中文原文:http://bl ...

  9. 如何使用Delphi设计强大的服务器程序

    现在网络的流行,使得服务器程序得到了广泛的应用,那么我们使用Delphi如何设计出强壮的服务器呢? 有人说,如果要设计服务器的话,一定要使用VC来设计,其实这个人说的有一定道理,因为如果你要使用Del ...

  10. 深入Qt 学习 -- 反射机制(比较简单清楚)

    相对于Java天生的这一特性, C++并不具备;但进入到Qt领域,这一切都变得简单自如了. 从Qt的元对象系统可知,除了提供信号/槽机制的特性之外,它还提供了以下特性: ■ QObject::meta ...