Silverlight控件使用(三)制作数字时钟

      今天来看博客,发现昨天没有更新,感觉不可思议,明明昨晚写了,草稿箱里也找了还是没有,正纳闷呢忽然想起来了,昨晚感觉困的撑不住了,不知道怎么想的就把写好的都剪切到桌面一个TXT里了,无语。没办法,在平潭这里加班不由自己啊,可能当时是觉得有几个地方没有深入的了解一下,不能算结束所以没有发表,今天算补上吧。明后天就是可爱的周末了,哈哈,你懂的~

 

      前几天看到学习Silverlight需要注意的十件事情,其中就有要熟练的编写XAML代码,所以在制作时钟时我没有使用Blend,而是使用纯手工制作,希望能取得劳斯莱斯的效果,嘎嘎。

制作时钟本就是Silverlight SDK中的一个基础,也没有什么复杂的东西,把一下的代码复制几遍稍加修改就行了

 

<Ellipse Margin="310,0,250,150" Width="330" Height="330">

       <Ellipse.Fill>

              <LinearGradientBrush>

                    <GradientStop Color="White"/>

                    <GradientStop Color="Gray" Offset="0.5"/>

              </LinearGradientBrush>

       </Ellipse.Fill>

</Ellipse>

 

 

不过再简单的事情到了初学者手中总会碰到问题的:

第一就是中间加小圆圈的时候,

 

<Ellipse Margin="310,0,250,150" Width="30" Height="30" Stroke="Green" StrokeThickness="8">

        <Ellipse.Fill>

                <LinearGradientBrush>

                      <GradientStop Color="Black"/>

                      <!--<GradientStop Color="Gray" Offset="0.5"/>-->

                </LinearGradientBrush>

        </Ellipse.Fill>

</Ellipse>

 

 

Stroke是指圆圈外部的圆环,而里面的<GradientStop Color="White"/>才是圆圈最中间的颜色

这样一个外绿内黑的环就一步做好了,当然也可以用两个Ellipse来做。

 

 

当添加表针动画时,有几个要注意的地方

<Rectangle Margin="310,0,250,270" Fill="Green" Width="10" Height="80" RenderTransformOrigin="0.5,1.25">

            <Rectangle.RenderTransform>

                    <RotateTransform x:Name="secondTransform"/>

            </Rectangle.RenderTransform>

</Rectangle>

此处RenderTransformOrigin是指旋转的水平中心点和垂直中心点,0.5,1.0即以矩形的底边中心点为旋转轴的

 

 

动画时间的控制

 <DoubleAnimation x:Name="secondAnimation"

                             Storyboard.TargetName="secondTransform"

                             Storyboard.TargetProperty="Angle"

                             Duration="0:1:0" RepeatBehavior="Forever" To="360"/><!--秒针走一圈所需时间-->

 

                       Duration="1:0:0" RepeatBehavior="Forever" To="360"/><!--分针走一圈所需时间是一小时-->

 

                       Duration="12:0:0" RepeatBehavior="Forever" To="360"/><!--时针走一圈所需时间为12小时-->

 

Duration是指表示 Timeline 处于活动状态的持续时间。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

冯博1254

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值