欢迎光临本店     登录 注册   加入收藏
  •   
欢迎光临清华大学出版社第三事业部!

此页面上的内容需要较新版本的 Adobe Flash Player。

获取 Adobe Flash Player

当前位置: 首页 > 科技 > 计算机与网络 > 操作系统 > Windows程序设计

浏览历史

Windows程序设计

Windows程序设计

prev next

  • 商品货号:20150615010
  • 所属系列:微软技术丛书
    商品重量:0克
    作者:(美)佩措尔德(Petzold, C.)著;张大成,汤铭,段洪秀译
    出版社:清华大学出版社
    图书书号/ISBN:9787302402374
    出版日期:2015年6月
    开本:16开
    图书页数:852
    图书装订:平装
    图书规格:185mm×260mm
    版次:1-1
    印张:53.25
    字数:1270千字
  • 上架时间:2015-06-15
    商品点击数:8931
  • 定价:¥128.00元
    本店售价:¥128.00元
    注册用户:¥128.00元
    vip:¥121.60元
    黄金等级:¥115.20元
    用户评价: comment rank 5
  • 商品总价:
  • 购买数量:

内容简介:

商品附加资源

内 容 简 介
作为Windows开发圣经的最新版本,本书的主题是Windows 8应用程序开发,全面介绍Windows程序设计所涉及的细枝末节,旨在帮助读者从高屋见瓴的角度建立完整的知识体系,为以后的职业生涯奠定良好的基础。全书共两部分19章。第112章着重介绍基础知识。第13~19章介绍侧重于Windows 8平台开发的触摸、位图、富文本、打印、富文本、GPS/传感器和手写笔等方面。
本书适合任何层次的Windows程序员阅读和参考,是帮助他们梳理和建立Windows知识体系的理想读物。 
© 2015 Tsinghua University Press Limited
Authorized translation of the English edition of Programming Windows, 6th Edition
Copyright ©2013 by Charles Petzold. This translation is published and sold by permission of O’Reilly Media,Inc., which owns or controls of all rights to publish and sell the same. 
本书中文版由O’Reilly Media,Inc.授权给清华大学出版社出版发行。
 
前  言
本书的主题是Windows 8应用程序开发。
在阅读本书前,需要一台运行Windows 8的计算机并安装Windows 8开发工具和软件开发包(SDK),最简单的办法是下载免费的微软Visual Studio Express 2012 for Windows 8。下载地址可以从Windows 8开发者中心获得:http://msdn.microsoft.com/windows/apps。简体中文版下载地址:http://dev.windows.com/zh-cn/
要安装Visual Studio,请单击页面上的“下载工具”连接,然后选择“查找 Visual Studio的其他版本”。开发者中心主页还提供了注册Windows 8开发者账号和向Windows Store提交应用程序的相关帮助。
Windows 8的版本
Windows 8基本上与Windows 7类似,两者都可以运行于同类个人计算机,拥有32位和64位Intel x86微处理器系列的计算机。Windows 8有一个是标准版本Windows 8,另外还有一个版本Windows 8 Pro,功能更多,针对的是技术爱好者和专业人士。
Windows 8和Windows 8 Pro都可以运行两种程序:
桌面应用程序
Windows 8应用程序,往往也称为“Windows 应用商店应用程序”
桌面应用程序是指传统的Windows程序,这些应用程序可以运行于Windows 7,通过Windows应用程序编程接口(Win32 API)与操作系统交互。为运行这些桌面应用程序,Windows 8提供了人们熟悉的Windows桌面界面。
Windows应用程序打破了传统Windows的一贯风格。这种应用程序一般在全屏模式下运行(但两种应用程序可以通过辅屏视图在同一个屏幕上显示),专门为触摸和平板计算机优化。这些应用程序可以从微软运营的应用商店进行购买和安装。(开发者可以直接通过Visual Studio进行部署和测试。)
除了运行在x86处理器上的Windows 8版本,Windows 8还有一个版本运行在ARM处理器上。这种处理器常见于廉价平板计算机和其他移动设备。此版本的Windows 8称为Windows RT,都已经预装在这些设备上。最早运行Windows RT的计算机是微软Surface。
Windows RT除了预装的桌面应用程序只能运行Windows应用程序。我们不能在Windows RT上运行现有的Windows 7应用程序,包括Visual Studio,因而不能在Windows RT上开发Windows 8应用程序。
Windows 8用户界面采用了新的设计范式,与Windows应用程序的风格协调一致。受到都市标志的启发,这种设计范式通过高反差来突出内容,采用朴素的字体,具有简明的风格和基于磁贴(tile)的界面,并伴随过渡动画效果。
许多开发者最初是通过Windows Phone 7认识的Windows 8设计范式,可见微软对小尺寸和大尺寸计算机均做了精心设计。过去的几年中,微软试图使传统Windows桌面更适合小型设备(如手持计算机和手机)。如今,手机的用户界面设计理念已被带至平板和桌面。
这个全新的设计更注重多点触摸(multitouch),这种操作方式在很大程度上改变了人机之间的关系。事实上,多点触摸这个词已经有些过时了,因为几乎所有新的触摸设备都能够响应多手指操作。因此直接用“触摸”便足以表达这个意思了。针对Windows 8应用程序的部分编程接口用一致的方式融合了触摸、鼠标和触笔输入,因而可以轻松通过这三种输入设备来使用应用程序。
本书要点
本书主要介绍Windows 应用商店应用程序的开发。有许多介绍Win32桌面应用程序开发的图书,其中包括《Windows程序设计(第5版)》。本书偶尔会提到Win32 API和桌面应用程序,但会将重点放在Windows 8应用程序的开发上。
为了编写这种应用程序,微软引入了一种全新的面向对象API,称为Windows运行时(Windows Runtime)或WinRT(请勿与运行在ARM处理器上的Windows 8版本Windows RT相混淆)。Windows运行时内部基于组件对象模型(Component Object Model,COM),通过/Windows/System32/WinMetadata目录下扩展名为.winmd的元数据文件向外暴露接口。从外部看,这套API完全是面向对象的。
从应用程序开发者的角度看,Windows运行时集成了Silverlight,但API内部并不是托管的。对于Silverlight开发者而言,最直接的变化或许是命名空间:Silverlight的命名空间以System.Windows开头,新API的命名空间将其替换为Windows.UI.Xaml。
大部分Windows 8应用程序不仅由代码构成,还包含标记。这些标记可能是工业标准化的超文本标记语言(HyperText Markup Language,HTML),也可能是微软的可扩展应用程序标记语言(eXtensible Application Markup Language,XAML)。将代码与标记分离的好处之一是将编码人员与界面设计人员的工作分离。
目前,开发Windows 8应用程序的技术主要有3种编程语言和标记语言的组合可供选择。
C++与XAML
C#/Visual Basic与XAML
JavaScript与HTML 5
对以上三种组合均可以使用Windows运行时,但Windows运行时为不同语言提供了相应的编程接口。虽然我们不能在同一个项目中混用不同的语言,但可以通过创建一种带有.winmd扩展名的库(Windows运行时组件)来实现。这种库可以通过任何Windows 8语言访问。
C++程序员可以使用一种C++的分支C++组件扩展或C++/CX。这种扩展使得该语言能够更好地利用WinRT。C++程序员可以直接访问部分Win32和COM API,也可以访问DirectX。此外,C++程序可以被编译为本地机器代码。
使用托管语言C#或Visual Basic .NET的程序员很容易上手WinRT。使用此类语言编写的Windows 8应用程序不能像C++程序那样轻松地访问Win32、COM或DirectX API,但也是可以的。本书第15章提供了几个相关示例程序。WinRT还提供了一个简化的.NET基础类库,用于完成一些底层任务。
针对JavaScript,Windows运行时提供了Windows Library for JavaScript或简称WinJS,使得用JavaScript编写的Windows 8程序能够调用许多系统级的功能。
经过慎重考虑,我决定在书中主要使用C#和XAML介绍相关技术。托管语言在开发和调试上的优势说服了我,并且我认为C#与Windows运行时最为匹配。希望C++程序员能够快速熟悉C#代码,从本书得到更多收获。
肯定还有其他很多Windows 8图书介绍如何使用其他语言来编写Windows 8应用程序。但我认为,一本书重点介绍一种语言比尝试同时涵盖多种语言更有价值。
不过,鉴于C++和本地代码在高性能应用中的优势,我还是非常很愿意展开新一轮的讨论。没有哪种工具能够解决任何问题。未来,我会在自己的博客和MSDN Magazine进一步讨论针对Windows 8的C++和DirectX开发。本书配套内容中的示例程序都配有对应的C++版本。
循序渐进
在阅读本书之前,需要掌握必要的预备知识。首先要熟悉C#。如果对此知之甚少,建议在阅读本书之前先学习C#。如果在学习C#之前有C或C++背景,可以阅读免费的电子书.NET Book Zero: What the C or C++ Programmer Needs to Know About C# and the .NET Framework。该书有PDF和XPS两种格式可供下载,地址为www.charlespetzold.com/dotnet
本书假定你了解XML(可扩展标记语言)的基本语法,因为XAML本身也是一种XML。但本书假定你不熟悉XAML和任何基于XAML的编程接口。
本书是一本API参考书,不是编程工具参考书。本人唯一使用的编程工具是Microsoft Visual Studio Express 2012 for Windows 8(本书一般简称为Visual Studio)。
相比程序代码,标记语言一般更受工具的广泛支持。事实上,有些开发者甚至认为XAML这样的标记语言完全应该自动生成。Visual Studio内建可交互的XAML设计器,我们可以将控件拖拽至页面。许多开发者逐渐熟悉并喜欢使用Microsoft Expression Blend来为他们的应用程序生成复杂的XAML。Microsoft Expression Blend包含在前面提到的开发工具和SDK中。
这种设计工具非常适合有经验的开发者,我认为新手最好从手工编写XAML学起。这也正是本书介绍XAML的过程。第8章介绍的XAML Cruncher工具正好印证了一个观点:虽然它能够在你输入XAML的过程中生成相应的对象,但不能为你写XAML代码。
也千万不要走向另一个极端。有的开发者非常善于写XAML,以至于忘记如何在代码中创建和初始化相应的对象!我认为两者都很重要,因此本书将分别介绍如何用代码和标记来完成类似的任务。
在开始写本书之前,我构思了几种介绍Windows运行时的方案。一种方案是从底层图形与用户输入开始,演示控件的构建方法,然后介绍现有的控件。
但我最终选择首先介绍对主流开发者最重要的几种技术:在应用程序中组合预定义的控件,然后通过代码和数据将这些控件联系在一起。这就是本书第Ⅰ部分(也就是前12章)的主要内容。
第Ⅱ部分主要介绍底层及较为具体的功能,其中包括触摸、位图、富文本、打印以及屏幕方向和GPS传感器。
配套内容
学习新的API和学习打篮球与吹奏双簧管非常类似。旁观是很难学会的,必须亲自上手。本书配套的源代码可以通过Companion Content链接下载,网址为https://www.microsoftpressstore.com/ store/programming-windows-9780735671768。
虽然有现成的代码,但最好自己键入代码,效果会更好一些。
计算机配置
为了写这本书,我用的是三星平板电脑700T的一个特殊版本。这款平板是2011年9月的Microsoft在Build大会上为参会人员提供的。因此,这款平板也有时称为Build平板。这款平板计算机配备1.6 GHz的Intel Core i5处理器,拥有64 GB的硬盘,屏幕支持8点触摸,分辨率为1366 × 768像素(本书绝大部分截图采用的是这个分辨率),是辅屏视图模式的最低要求。
虽然这个Build平板预装的是Windows 8的开发者预览版(Developer Preview),但随着时间的推移,我依次安装了2012年3月公布的消费者预览版(Consumer Preview,build 8250)、2012年6月的发行预览版(Release Preview,build 8400),最终安装的是Windows 8 Pro的正式发行版。除了测试方向传感器外,我一般都通过底座的HDMI接口将这台平板连到1920×1080分辨率的外部显示器,并使用外接键盘和鼠标。
微软的Surface平板电脑一上市,我就购买拉一台,用于程序测试。为了在Surface上部署和调试应用程序,我采用了Tim Heuer在博客中介绍的一种技术,网址为http://timheuer.com/blog/archive/2012/10/26/remote-debugging-windows-store-apps-on-surface-arm-devices.aspx。这种技术在文档中的正式描述为:“在远程计算机上从 Visual Studio 运行 Windows 应用商店应用”(http://msdn.microsoft.com/zh-cn/library/hh441469.aspx)。
在测试用到方向传感器的程序来时,采用Surface这样的物理平板设备是很有必要的。
大部分情况下,我使用的都是插在底座上的Build平板。通过外部的键盘、鼠标和显示器,我可以像以往那样使用微软Visual Studio和Word,而让Windows 8程序在带有触摸屏的平板上运行。这样的开发环境我感到非常满意,尤其是和我当年写《Windows程序设计(第1版)》时使用的配置相比。
不过,那已经是25年前的事了。
本书的前世今生
本书是《Windows程序设计》的第6版。第1版是1986年受微软出版社的委托写的。之所以收到这个邀请,是因为我当时在为Microsoft Systems Journal(MSDN Magazine的前身)写Windows编程系列文章。
那份合同我至今记忆犹新。
最值得一提的是它首页下部的一段。
typescript(打字稿)这个词意味着,稿件至少要用打字机打印。要求规定了手稿使用双倍行距、固定字宽,每页大概有250个字。页数在400左右,也就是说微软出版社不希望内容太多。
为了写这本书,我采用了一台IBM PC/AT计算机,它采用8 MHz的80286微处理器、512 KB的内存和30 MB的硬盘。显示器为16色的IBM Enhanced Graphics Adapter,最大分辨率为640×350。写前面几章时用的是Windows 1(1985年11月发行的),后来用上了Windows 2的beta版本。
当时,编辑和编译Windows程序要在Windows以外的MS-DOS环境下进行。为了编辑源代码,我采用了WordStar 3.3,也是我写书时所用的工具。MS-DOS命令行下可以运行微软的C编译器,然后在Windows上进行运行和测试。为了再次进行编辑和编译,需要退出Windows,回到MS-DOS下。
1987年有一段时间,我为了写书几乎废寝忘食,越熬越晚,甚至黑白颠倒。当时我家里还没有电视,但会收听地方广播电台WNYC-FM不间断播放的古典音乐和美国国家公共电台的节目。在那段时间里,我在Morning Edition结束后睡觉,刚好在All Things Considered开始前起床。
根据合同约定,我要以磁带和纸质形式将书稿提交给微软出版社。虽然当时我们都有电子邮件,但那时的电子邮件还不支持附件。编辑好的书稿通过邮政包裹发回给我,上面带有许多修改标记和即时贴。我记得有一页上有人画了一个温度标记来倾诉我不断提交的书稿,上面写着“温度上升”!
随着时间的推移,这本书的重点发生了一些变化。事实证明,原定针对程序员和其他高级用户的写书计划是错误的。也不知道是何原因,最终书名就定为《Windows程序设计》。
合同截止日期为四月底,但我直到八月才完成。本书最终出版于1988年,页数达到了850页。如果这是普通的书稿(即没有程序清单和图表),字数将不止合同约定的10万字,而会达到40万字。
《Windows程序设计》第1版的封面上写着“The Microsoft Guide to Programming for the MS-DOS Presentation Manager: Windows 2.0 and Windows/386”, Presentation Manager 这个名称让我想起针对Windows和OS/2的Presentation Manager和平共存于两个操作系统环境下的那段时光。
《Windows程序设计》的第1版在编程社区中并没有引起太多关注。当MS-DOS程序员意识到有必要学习全新的Windows时,第2版(1990年,Windows 3)和第3版(1992年,Windows 3.1)也相继出版了。
Windows API从16位升级到32位后,《Windows程序设计》的第4版(1996年,Windows 95)和第5版(1998年,Windows 98)陆续出版。第5版目前还在出版发行,根据我收到的读者来信分析,该书在印度和中国最受欢迎。
在前面5个版本中,我们用的都是C语言。在第3版问世后,第4版出版之前,我的好友Jeff Prosise说他想写《Windows程序设计与MFC》,我表示支持。我当时并不太在意Microsoft Foundation Classes(MFC),因为我那时认为它只不过是Windows API的轻型包装程序,而且我当时也没有深入钻研C++。
有些程序员希望了解核心机制而不关心程序代码与操作系统之间的细枝末节。随着时间的推移,《Windows程序设计》在这些程序员当中赢得了广泛的赞誉。
《Windows程序设计》的早期版本并非如此。当时,为接触到核心需要使用汇编语言将字符直接输出到图形显示内存区域,而只能借助于MS-DOS来进行文件I/O。相对而言,Windows程序员使用的是高级语言,图形完全没有加速,访问硬件只能通过层层API和设备驱动程序来完成。
从MS-DOS到Windows的变迁意味着用一定的速度和效率来换取某些优势。何种优势?很多经验丰富程序员也说不准。是图形、图片、颜色、漂亮的字体,还是鼠标?这些都不是计算机的全部!一些怀疑论者称其为WIMP(window-icon-menu-pointer,窗口-图标-菜单-指针)界面。其实,这些特点并不是人们选择这个环境并为其编写代码的动机。
随着时间的推移,高级语言会变成低级语言,多层次接口最终会简化为本地API(至少在某种语言当中)。如今,有些C/C++程序员因为效率问题抵触C#这样的托管语言,而Windows也一再成为人们争论的焦点。Windows 8是Windows自1985年问世以来革命性地一次升级,但为主流桌面系统引入针对智能电话和平板电脑设计的触摸界面,这种做法备受老版本Windows的用户质疑,有的用户甚至会为无法找到熟悉的功能发牢骚。
伴随着Windows令人激动和饱受争议的新用户界面,以及现代风格的API和编程语言的问世,《Windows程序设计》也开始掀开新的篇章。
未来计划
在我的编程生涯中,Windows 8可能会占据一段时间。也就是说我会发表一系列Windows 8编程的博文。可以从该网址访问我的博客和订阅RSS源:www.charlespetzold.com
我喜欢解决编程方面的疑难杂症并在博客中与大家分享。如果您有关于Windows 8编程方面的疑问希望与我共同探讨并让我尝试解决,可以发送电子邮件给我:cp@charlespetzold.com
从MSDN Magazine的 2013年1月刊开始,我每月为DirectX Factor栏目写一篇文章,主要讨论在Windows 8和Windows Phone 8应用程序中使用DirectX的相关议题。MSDN Magazine可以通过这个网址免费阅读:http://msdn.microsoft.com/magazine
鸣谢
微软出版社的Ben Ryan和Devon Musgrave设计了一种出版方式,先将书稿部分章节发表到开发者社区,同时也为最终版本的销售做准备。本书也是以这种方式与大家见面的。
Devon和我的技术编辑Marc Young的部分职责是尽量多发现本书中文字和代码中的错误,以免我陷入尴尬境地。他们确实找到了不少,非常感谢!
感谢Andrew Whitechapel对C++示例代码的反馈。感谢Brent Rector通过电子邮件在对某个触摸相关问题为我提供了关键的解决方案,也感谢他为我介绍IBuffer的背景知识。感谢Robert Levy在触摸技术方面为我提供的反馈。感谢Prosise在我遇到疑难问题时给予我关键的支持。感谢Larry Smith发现我文字中的诸多错误。感谢Admiral鼓励我使C++开发者也能够从本书中受益。
当然,书中遗留的错误是我的问题。欢迎读者通过本书前面给出的地址将发现的问题发送到出版商,如果是大问题,我也会在www.charlespetzold.com/pw6列出。
最后,感谢我的妻子Deirdre Sinnott对我的爱与支持。感谢她在生活上做出必要的调整,只为了让我好好写这本书。
Charles Petzold
美国纽约州罗斯科镇与纽约市
2012年12月31日
勘误与支持
我们尽力避免本书及其配套内容中出现错误,但错误在所难免。本书出版后报告的错误将在微软出版社的网站上公布。可以通过https://www.microsoftpressstore.com搜索本书,然后单击Errata & Updates链接。如果发现有未报告的错误,请通过Submit Errata链接提交。
如果需要额外的支持,可以发电子邮件到微软出版社的客服,邮箱地址为mspinput@microsoft.com
注意,以上地址不提供对微软产品的支持。
意见反馈
在微软出版社,您的满意是对我们最大支持,您的反馈是我们最宝贵的财富。欢迎通过以下网址告诉我们您对本书的看法。
http://aka.ms/tellpress
反馈请尽量简短,我们会阅读您的每一条意见和建议。再次感谢您对我们的支持!
保持联系
让我们保持联系!我们的Twitter地址为http://twitter.com/MicrosoftPress
 
目   录
第I部分  基础知识
第1章  标记与代码 3
1.1  第一个项目 3
1.2  图片的使用 8
1.3  文字的变形 11
1.4  播放媒体文件 18
1.5  代码形式的变通 18
1.6  通过代码显示图片 22
1.7  纯粹的代码 23
第2章  XAML语法 25
2.1  通过代码定义渐变画笔 25
2.2  属性元素语法 27
2.3  内容属性 30
2.4  TextBlock的内容属性 33
2.5  画笔和其他资源的共享 35
2.6  资源是共享的 38
2.7  探究矢量图形 39
2.8  通过Viewbox实现拉伸 47
2.9  样式 49
2.10  初探数据绑定 53
第3章  基本事件的处理 56
3.1  Tapped事件 56
3.2  路由事件的处理 58
3.3  重写Handled设置 63
3.4  输入、对齐与背景 64
3.5  大小与方向的变化 67
3.6  尝试绑定到Run元素 71
3.7  计时器与动画 73
第4章  基于Panel的布局 79
4.1  Border元素 79
4.2  矩形与椭圆 82
4.3  StackPanel 83
4.4  横向的StackPanel 86
4.5  基于绑定与转换器的WhatSize 88
4.6  ScrollViewer方案 91
4.7  布局中的“怪异”现象 96
4.8  编写一个简单的电子书应用 97
4.9  StackPanel子项的定制 99
4.10  UserControl的定制 101
4.11  Windows Runtime类库的创建 103
4.12  换行的替代方案 105
4.13  Canvas与附加属性 107
4.14  Z-Index 111
4.15  使用Canvas的注意事项 111
第5章  控件与交互 113
5.1  Control的特别之处 113
5.2  用于设置范围的Slider控件 115
5.3  Grid 118
5.4  屏幕方向与比例 123
5.5  Slider与格式化字符串转换器 125
5.6  工具提示与转换 125
5.7  用Slider绘制草图 127
5.8  按钮的几种变体 129
5.9  依赖属性的定义 135
5.10  RadioButton 143
5.11  键盘输入与TextBox 149
5.12  触摸与Thumb 151
第6章  WinRT与MVVM 157
6.1  MVVM简介 157
6.2  数据绑定通知 158
6.3  ColorScroll的“视图模型” 159
6.4  精简的语法 164
6.5  DataContext属性 166
6.6  绑定与TextBox 168
6.7  按钮与MVVM 172
6.8  DelegateCommand类 173
第7章  异步 179
7.1  线程与用户界面 179
7.2  MessageDialog的使用 180
7.3  Lambda函数形式的回调 184
7.4  神奇的await运算符 185
7.5  异步操作的撤销 187
7.6  File I/O的处理 189
7.7  文件选择器和文件I/O 190
7.8  异常处理 194
7.9  多个异步调用的合并 195
7.10  高效的文件I/O 197
7.11  应用程序的生命周期 198
7.12  自定义的异步方法 202
第8章  应用栏和弹出式窗口 211
8.1  实施快捷菜单 211
8.2  Popup对话框 213
8.3  应用栏 216
8.4  应用栏按钮样式 218
8.5  深入Segoe UI Symbol字体 223
8.6  应用栏CheckBox和RadioButton 229
8.7  记事本应用栏 231
8.8  XamlCruncher入门 236
8.9  应用设置和视图模式 249
8.10  XamlCruncher页面 251
8.11  解析XAML 255
8.12  XAML文件的输入和输出 257
8.13  设置对话框 260
8.14  超越Windows Runtime 264
第9章  动画 265
9.1  Windows.UI.Xaml.Media.Animation命名空间 265
9.2  动画基础 266
9.3  动画变化欣赏 268
9.4  双动画 273
9.5  附加属性动画 278
9.6  缓动函数 280
9.7  完整的XAML动画 288
9.8  自定义类动画 292
9.9  关键帧动画 294
9.10  Object动画 297
9.11  预定义动画和过渡 299
第10章  变换 302
10.1  简短回顾 302
10.2  旋转(手动和动画) 304
10.3  可视化反馈 309
10.4  平移 310
10.5  变换组 312
10.6  缩放变换 316
10.7  建立模拟时钟 319
10.8  倾斜 323
10.9  制作开场 325
10.10  变换数学 326
10.11  复合变换 332
10.12  几何变换 334
10.13  画笔变换 335
10.14  老兄,元素在哪里? 338
10.15  投影变换 341
10.16  推导Matrix3D 347
第11章  三个模板 355
11.1  按钮数据 355
11.2  决策 363
11.3  集合控件和实际使用 DataTemplate 366
11.4  集合和接口 375
11.5  轻击和选择 376
11.6  面板和虚拟化面板 380
11.7  自定义面板 383
11.8  条目模板条形图 394
11.9  FlipView控件 395
11.10  基本控件模板 398
11.11  视觉状态管理器 406
11.12  使用generic.xaml 412
11.13  模板部分 413
11.14  自定义控件 419
11.15  模板和条目容器 424
第12章  页面及导航 427
12.1  屏幕分辨率问题 427
12.2  缩放问题 431
12.3  辅屏视图 434
12.4  横屏和竖屏的变化 439
12.5  简单页面导航 441
12.6  返回堆栈 445
12.7  导航事件和页面恢复 447
12.8  保存和恢复应用状态 450
12.9  导航加速器和鼠标按钮 453
12.10  传递和返回数据 456
12.11  Visual Studio标准模板 460
12.12  视图模式和集合 466
12.13  分组条目 482
第II部分  Windows 8新特性
第13章  触控 489
13.1  Pointer路线图 490
13.2  初试手绘 492
13.3  捕获指针 494
13.4  编辑弹出菜单 501
13.5  压力灵敏度 504
13.6  平滑锥度 507
13.7  如何保存图画 514
13.8  现实和超现实手绘 515
13.9  触控钢琴 517
13.10  操控、手指和元素 521
13.11  处理惯性 528
13.12  XYSlider控件 530
13.13  中心缩放和旋转 535
13.14  单手指旋转 538
第14章  位图 544
14.1  像素位 544
14.2  透明度和预乘Alpha 550
14.3  径向渐变画笔 554
14.4  加载及保存图片文件 560
14.5  色调分离和单色化 568
14.6  保存手绘作品 575
14.7  HSL颜色选择 595
14.8  反向绘画 604
14.9  访问照片库 608
14.10  捕捉相机照片 615
第15章  原生 620
15.1  P/Invoke简介 620
15.2  一些帮助 625
15.3  时区信息 625
15.4  DirectX的Windows Runtime Component封装器 643
15.5  DirectWrite和字型 644
15.6  配置和平台 654
15.7  解读字型规格 656
15.8  用SurfaceImageSource绘画 662
第16章  富文本 672
16.1  专用字体 673
16.2  初试Glyphs 676
16.3  本地存储的字型文件 678
16.4  排版功能增强 681
16.5  RichTextBlock和段落 682
16.6  RichTextBlock选择 685
16.7  RichTextBlock和超限 685
16.8  分页的危险 691
16.9  使用RichEditBox富文本编辑 697
16.10  自行文本输入 704
第17章  共享和打印 709
17.1  设置和弹窗 709
17.2  通过剪贴板共享 712
17.3  Share超级按钮 716
17.4  基本打印 717
17.5  可打印边距和不可打印边距 722
17.6  分页过程 725
17.7  自定义打印属性 731
17.8  打印每月计划 735
17.9  打印可选范围页 742
17.10  关键 751
17.11  打印FingerPaint艺术画 752
第18章  传感器与GPS 755
18.1  方位和定位 755
18.2  加速度、力、重力和矢量 759
18.3  跟随滚球 767
18.4  两个北极 771
18.5  陀螺仪 = 加速计 + 罗盘 773
18.6  OrientationSensor(方向传感器) =加速计+罗盘 776
18.7  方位角和海拔 781
18.8  必应地图和必应地图图块 791
第19章  手写笔 803
19.1  InkManager集合 804
19.2  墨迹绘画属性 806
19.3  擦除和其他增强功能 811
19.4  选择笔画 815
19.5  黄色拍纸簿 822

商品标签

购买记录(近期成交数量0)

还没有人购买过此商品
总计 0 个记录,共 1 页。 第一页 上一页 下一页 最末页

用户评论(共0条评论)

  • 暂时还没有任何用户评论
总计 0 个记录,共 1 页。 第一页 上一页 下一页 最末页
用户名: 匿名用户
E-mail:
评价等级:
评论内容:
验证码: captcha