你好,游客 登录 注册 搜索
背景:
阅读新闻

Visual Studio 11:使用 C++ 开发一个最简单的 Metro 应用

[日期:2012-06-12] 来源:oschina  作者:红薯 [字体: ]

Visual Studio 11 消费者预览版支持使用 C++ 创建 Metro 风格的应用程序,这对广大本地应用开发者来说是一个大消息。这里我们来创建一个非常简单的 Metro 应用。

启动 Visual Studio 并通过 Visual C++>Windows Metro Style>Blank Application 模板创建一个项目.

“Hello world”

打开 BlankPage.xaml 文件,滚动到代码底部并定位 Grid 元素,然后插入一个 TextBlock,代码如下:

 
1 <Grid Background="{StaticResource ApplicationPageBackgroundBrush}">
2     <TextBlock Text="Hello world" Margin="12,20" Style="{StaticResource SubheaderTextStyle}"/>
3 </Grid>

Margin 属性是文本离边界之间的距离值,这里我们设置左边距离 12px,顶部距离 20px。你也可以修改 FontSize 属性值来改变字体大小。

如果你现在运行应用程序,那将会是一个黑屏上显示 Hello world 文本在左上角。你可以通过 BlankPage.xaml 来定义应用的 UI 外观,但代码逻辑存放在 BlankPage.xaml.hBlankPage.xaml.cpp 文件中,这两个文件和 BlankPage.xaml 放在同一个目录。

这是一个普通的 C++ 类,但有所不同,有一些新的扩展语法,成为 C++/CX,意思是 Component extensions. 纯 C++ 不能用于开发 Metro 应用,但使用纯 WinRT 会让代码变得很笨重,因为 Metro 世界所有都是 COM 对象。C++/CX 扩展可以让 C++ 程序员无需了解太多非标准的扩展。通过 AddRef 和 Release 的调用可隐藏更多的技术细节。

C++ to XAML

你可以通过添加 x:Name="txtHello" 来为在 XAML 定义的 TextBlock 取个名字,并可设置值。然后你就可以使用如下代码来操作该文本元素。将下面代码添加到 BlankPage::OnNavigatedTo 方法:

 
1 txtHello->Text = "Hello world!!!";

运行程序,你将看到如下图所示的结果:


虽然上述例子并不值得太激动,不过想想你当时学习 Win32、MFC 和 WTL 开发,这已经是非常简单了。

linux
本文评论   查看全部评论 (0)
表情: 表情 姓名: 字数

       

评论声明
  • 尊重网上道德,遵守中华人民共和国的各项有关法律法规
  • 承担一切因您的行为而直接或间接导致的民事或刑事法律责任
  • 本站管理人员有权保留或删除其管辖留言中的任意内容
  • 本站有权在网站内转载或引用您的评论
  • 参与本评论即表明您已经阅读并接受上述条款