可可肉的奋斗(第五天)2012-12-28----------显示与隐藏And线程Sleep的模拟And多图片合成技术

这个系列的贴子属于日记类型的帖子,现在看可能会比较水,算是我个人的奋斗记录吧,希望将来可以对后来(学习)人有所帮助

个人技术背景:做JAVA开发五年,懂C#基本语法(停留在2.0)工作经验3.5年

主要技术:为Surface 开发应用,WinRT,XAML

 

----------------------------------------------------

 

2012-12-28

今天的收获不是很大,主要研究了:

1“图片”的显示与隐藏

2模拟实现线程Sleep()

3多图片合成技术

 

转载请注明作者:二厶可可肉.cyrusLiu.刘.步云.龙飞...小雪  (好吧有点长)

         出处:http://blog.csdn.net/cyrusliu/article/details/8449507

 

现实与隐藏

经过多方尝试,以失败告终,但庆幸的是,找到了解决方案,那就是把Image放入StackPanel中,然后再给这个对象设置一下名字,在后台设置图片的Visibility属性就可以了

Visibility是一个枚举类型,他有两个值Visible和Collapsed   第一个是显示,第二个是隐藏,默认情况下是显示的

  sp1.Visibility = Visibility.Visible;
  sp1.Visibility = Visibility.Collapsed;

 

Sleep线程

在通常情况下可以使用System.Threading.Thread.Sleep(1000);但是在做Surface的时候,这个类是不能用的,那又该怎么办呢?

灵机一动,使用for(int i=0;i<10W;I++){}的方法来实现,虽然会有一定的不确定性(精准),但在特殊情况下,可以这样做一下

图片合成技术

如果你是一个很早就接触编程的朋友可能会知道当年¥符号是怎么打的,在这里我再解释一下,但是没有直接的这个符号,需要用两个符号来组合出来。

通常的做法是
先打印Y 
然后退格
在打印=

这样,人民币的符号就打印出来了。它的特点是 让两个图片叠加,上面的压下面的。图片合成技术也一样

以前有PictureBox 可以通过设置背景及图片来实现这个效果,优先显示图片,后显示背景,如果图标的对应位置为透明,则显示后面的背景部分。现在说一下我的实现方法
使用StackPanel来包裹Image。分别设置背景及Source即可。

如果你问3个图像合成怎么办?很简单,在外面再包一个StackPanel就行了

顺便说些其他图片的功能

Opacity 透明度100%不透明,0%透明

NineGrid拉伸特效

<Image Height="48" Width="48" Source="Assets/勇士.png" Opacity="0.5" NineGrid="0" RenderTransformOrigin="1,0"   >
                    <Image.RenderTransform>
                        <CompositeTransform TranslateX="60" TranslateY="60" Rotation="26.095"/>
                    </Image.RenderTransform>
                </Image>


TranslateX 向右平移显示

Rotation 旋转

 

 

 

 

对技术的狂热是我进步的阶梯,对知识的渴望是我学习的源动力。

 

 

 

鸣谢

 

师父

 

 

 

 

二厶可可肉

2012年12月28日

 

 

 

 

您的支持是我创作的最大动力

 

 

 

 

 

 

你可能感兴趣的:(可可肉的奋斗(第五天)2012-12-28----------显示与隐藏And线程Sleep的模拟And多图片合成技术)