metro入门C++
- 格式:doc
- 大小:1001.50 KB
- 文档页数:93
在此,我们将介绍有助于你使用 C++ 开发 Windows 应用商店应用的基本代码和概念,此类应用的 UI 使用可扩展应用程序标记语言 (XAML) 定义,这些代码和概念指导你完成逐步创建应用的各个步骤。
本教程假定你对 C++ 和基本编程概念(包括面向对象的设计、用户界面控件和事件处理)有所了解。
你也可以从MSDN 示例网站下载完成后的应用。
Windows 应用商店应用是专为 Windows 8 中引入的用户体验而量身定制的。
每个出色的 Windows 应用商店应用都遵循一定的设计原则,从而使其看起来比传统桌面应用更漂亮,响应程度更高并且更加直观。
开始创建 Windows 应用商店应用之前,建议你先阅读这种新模型的设计理论。
你可以在设计 Windows 应用商店应用中找到详细信息。
在完成本教程后,请考虑阅读开发使用 C++ 和 XAML 的端对端 Windows 应用商店应用:Hilo来了解有关如何在使用 C++ 的 Windows 应用商店应用中使用现代 C++、Windows 运行时、异步编程、XAML 和开发模式(例如Model-View-ViewModel (MVVM))的详细信息。
如果你希望使用其他编程语言,请参阅:∙创建第一个采用 JavaScript 的 Windows 应用商店应用∙使用 C# 或 Visual Basic 创建你的第一个 Windows 应用商店应用目标开始编写代码之前,我们先来看一看你在使用 C++ 构建 Windows 应用商店应用时会用到的一些功能和设计准则。
了解 Microsoft Visual Studio Express 2012 for Windows 8 如何为设计和开发工作提供支持也很有帮助。
了解如何以及何时使用 Visual C++ 组件扩展 (C++/CX) 来简化面向 Windows 运行时编写代码的工作也十分重要。
我们的示例应用是一个博客阅读器,用于下载和显示 RSS 2.0 或 Atom 1.0 源中的数据。
本文章旨在介绍你在自行创建应用时可以遵循的步骤。
完成本课程后,你将能够使用 XAML 和 C++ 构建你自己的 Windows 应用商店应用。
你可以从 MSDN 示例网站下载完成后的应用。
C++ 桌面应用与 Windows 应用商店应用对比如果你习惯使用 C++ 编写 Windows 桌面程序,你可能会发现 Windows 应用商店应用编程的某些方面与这十分类似,而其他一些方面则需要了解更多知识。
相同之处∙你仍然可以使用 C++ 编写代码,并且你可以访问 STL、CRT 以及任何其他 C++ 库,所不同的是,你不能直接调用某些函数,例如与文件 I/O 有关的函数。
∙如果你习惯使用可视化设计器,你仍然可以使用这些设计器。
如果你习惯手动编写 UI 代码,则可以手动编写 XAML 的代码。
∙你仍然可以创建使用 Windows 操作系统类型和你自己的自定义类型的应用。
∙你仍然可以使用 Visual Studio 调试器、探查器和其他开发工具。
∙你仍然可以创建使用 Visual C++ 编译器编译为原生机器代码的应用。
使用 C++ 编写的 Windows 应用商店应用不能在托管的运行时环境中执行。
新增内容∙Windows 应用商店应用的设计准则与桌面应用的设计准则有很大差别。
设计的重点不再是窗口边框、标签和对话框等。
内容才是最重要的。
出色的Windows 应用商店应用从最开始的规划阶段就严格遵循这些准则。
∙你将使用 XAML 定义整个 UI。
在 Windows 应用商店应用中,UI 与核心程序逻辑之间的分离比在 Microsoft 基础类 (MFC) 或 MicrosoftWin32 应用中更为清晰。
你在代码文件中处理行为的同时,其他用户可以在 XAML 文件中处理 UI 的外观。
∙尽管 Win32 仍然可用于某些功能,但你将主要面向一个易于导航且面向对象的全新 API(即 Windows 运行时)进行编程。
∙使用 Windows 运行时对象时,通常你会使用 C++/CX,该语言会提供可用于创建和访问 Windows 运行时对象的特殊语法,并在创建和访问过程中支持 C++ 异常处理、委派、事件和动态创建对象的自动引用计数。
使用C++/CX 时,基础 COM 和 Windows 体系结构的详细信息几乎从应用代码中完全隐藏。
有关详细信息,请参阅C++/CX 语言参考。
但是,你还可以使用Windows 运行时 C++ 模板库直接面向 COM 界面编写程序。
∙你的应用可以支持一些新概念(例如,挂起、超级按钮和应用栏),以便为用户提供更有凝聚力的体验。
∙你的应用将编译为一个程序包,其中还包含有关你的应用所包含的类型、它使用的资源以及它需要的功能(文件访问、Internet 访问和相机访问等)的元数据。
∙在 Windows 应用商店中,你的应用通过一个验证流程确定为安全之后,即可面向无数潜在客户发布。
简单博客阅读器,第 1 部分我们的示例应用是一个基本的博客阅读器,用于下载和显示 RSS 2.0 或 Atom 1.0 源中的数据。
我们将分为两部分介绍该示例。
首先,我们将创建一个基本的、单页版本的博客阅读器,以便我们重点了解使用 C++ 编写 Windows 应用商店应用程序的一些基础知识。
此应用虽然没有真实的 Windows 应用商店应用中所需的所有功能,但我们可以通过它了解一些基本概念。
在第 2 部分中,我们将使用 Visual Studio Express 2012 for Windows 8 中的一些预定义 XAML 模板创建一个功能更为丰富的多页面应用版本。
我们将从基础的开始:∙如何在 Visual Studio Express 2012 for Windows 8 中创建 Windows 应用商店应用项目。
∙如何了解创建的各种项目文件。
∙如何了解 Visual C++ 组件扩展以及何时使用它们。
Visual Studio 提供以下内容:源文件管理;综合的构建、部署和启动支持;XAML、Visual Basic、C#、C++、图形和清单编辑;调试及其他功能。
Visual Studio 有多种版本,在此我们使用的是 Visual Studio Express 2012 for Windows 8。
你可以免费下载 Visual Studio 并且可以获取构建、打包以及部署 Windows 应用商店应用所需的一切信息。
若要开始创建应用,首先应创建一个使用 C++ 的 Windows 应用商店应用项目。
在此,我们使用最基本的项目模板“空白应用(XAML)”。
创建 Windows 应用商店应用项目1.安装 Visual Studio Express 2012 for Windows 8。
在系统提示时打开该软件并设置用于 Visual C++ 的部署设置。
2.在菜单栏上,选择“文件”>“新建项目”。
将打开“新建项目”对话框。
3.在“已安装”窗格中,展开“Visual C++”。
4.为 Windows 应用商店应用项目选择模板。
5.在中心窗格中,选择“空白应用(XAML)”。
6.输入项目的名称。
我们将其命名为“SimpleBlogReader”。
7.选择“确定”按钮。
已创建项目文件。
在继续之前,让我们看一下项目文件。
在“解决方案资源管理器”窗格顶部,选择“显示所有文件”图标可显示“空白应用(XAML)”模板创建的所有项目文件。
根据你指定的项目名称,你应会看到与此类似的内容。
(实际上,Debug 文件夹不会出现,直至通过按 F5 首次构建应用之后。
)你编辑的文件让我们先看一下你可以编辑的项目文件。
基本上,其中包括直接位于项目文件夹中的任意文件。
文件名说明App.xaml,MainPage.xaml 代表应用对象和 UI 默认页面的 XAML 标记文件。
你可以使用 Visual Studio 设计器、Microsoft Expression Blend 或其他 XAML 设计器工具修改这些文件。
大部分修改内容都位于 MainPage.xaml 中。
App.xaml.h,App.xaml.cpp Application和MainPage类的用户可编辑标头和实现代码隐藏文件。
这些类分别对应于 App.xaml 和MainPage.xaml 中的 XAML 树。
MainPage.xaml.h 和MainPage.xaml.h,MainPage.xaml.cpp MainPage.xaml.cpp 文件是添加与本页相关的事件处理程序和其他自定义程序逻辑的位置。
App类中的成员变量的作用域为整个应用。
Page类中的变量的作用域仅为该页面。
App.xaml 没有可视的设计平面,但你仍可以在设计器中使用文档大纲和属性检查器。
Package.appxmanifest 包含描述应用的元数据,例如,显示名称、描述、徽标和功能。
单击此项时,它将在“清单设计器”中打开。
*.png (位于 Assets 文件夹。
)默认徽标和初始屏幕图像,你可以将其替换为自己的图像。
pch.h,pch.cpp 典型的 C++ 预编译头文件。
可以根据需要向 pch.h 文件中添加 #include 指令。
你不能修改的文件当你从 Visual Studio 中的 *.xaml 页面导航时,XAML 设计器或编辑器将生成这些文件。
它们将启用你所编写的用于引用 XAML 元素的代码隐藏文件。
它们还将使代码隐藏文件中的 Microsoft IntelliSense 保持最新。
其中一些文件位于Common 子文件夹(不在图示中展开)。
你可以看一下这些文件以大致了解分部类的工作方式、声明变量的位置,等等。
这些文件也可以用于调试。
但是不要修改这些文件,因为在下一次构建应用或从 XAML 页面导航到其他位置时将覆盖你所做的所有更改。
文件名说明App.g.h,App.g.hpp App.g.hpp 包含应用的主要方法和一些关联的样本代码。
App.g.h 包含的代码可使操作系统在运行时将 .xaml 文件加载进内存并创建对象图。
不要修改这些文件。
StandardStyles.xaml 包含用于定义 Windows 应用商店应用的外观和感觉的预定义项模板、样式和其他元素。
请勿修改已具备的样式和模板。
但你可以基于它们创建自定义样式(使用BasedOn属性),或将它们复制并粘贴到其他页面中,为副本指定一个不同的名称,然后修改副本。
MainPage.g.h,MainPage.g.hpp 包含为MainPage和App类自动生成的部分类定义,以及为每个具有x:Name属性的 XAML 元素生成的成员变量。