电脑技术学习

破译微软Win Vista表示层Avalon之谜

dn001
  注意有两种指定颜色的方式:一种是用141种预定义的颜色名字,如"Beige"、"Red"、"HotPink"等;另一种是用16进制RGB符号,以"#"为前缀,加上代表RGB颜色的16进制数,如"#00005D"。 2D图形现在我们研究其他的Avalon元素,如基本的2D图形:矩形、直线和椭圆。我们现在选择Canvas元素,它在用绝对坐标放置图形时特别好使。下面创建一个显示绿色粗对角线的Canvas元素: 注意看到开始点与结束点的坐标单位可以用像素(px)、厘米(cm)或英寸(in)表示。如果省略,默认单位是像素。Avalon中,坐标值(及透明度、角度等)是双精度型,这样Avalon渲染引擎就能正常工作,使输出结果与设备无关。而GDI采用的是整数型。下面是输出结果:


  让我们再增加一些图形: 这些新增图形的代码很好理解,您可以把它复制到XAMLPad中:


  图形之间可以重叠,可视顺序是代码中最后的元素总是在最上面。画多边形指定各个顶点的坐标,用逗号分隔。接下来注意Opacity属性值为0时图形是完全透明的,为1时则完全不透明。这里矩形的Opacity属性值为0.4,所以它是40%透明的,可以看到被它遮盖的图形。还需注意的一点是可以在中加入注释。最后一个细节是canvas元素的背景色被修改了,背景色属性被改为"Linen"。 CodeGuru时钟在接下来的Avalon系列文章里,我还要讲到如何用Visual Studio 2005创建Avalon应用程序,并介绍更多的Avalon类及其相应的XAML元素。您还将学会如何用Avalon开发小型的却完整的样例程序--CodeGuru桌面时钟。


  不要小看这一时钟,它功能完整,而且还利用了Avalon的语音识别及合成功能,所以它还能听到您的命令,并用语音回答。

标签: