跨窗口动画的制作方法

文档序号:6381154阅读:343来源:国知局
专利名称:跨窗口动画的制作方法
技术领域
本发明涉及动画显示。
背景技术
许多应用使用动画来丰富用户的体验。例如,动画可响应于用户选择用户界面元素、前进至下一幻灯片、打开/关闭文档、改变视图等来被执行。这些动画在应用的窗口内执行。例如,一个动画可在用户界面窗口内执行,而另一动画可在文档窗口内执行。通常期望创建移动窗口、调整窗口大小或跨这些窗口的动画。然而,这些类型的动画可能是很难的。

发明内容
提供本发明内容以便以简化形式介绍将在以下具体实施方式
中进一步描述的一些概念。本发明内容并非旨在标识所要求保护的主题的关键特征或必要特征,也不旨在用于帮助确定所要求保护的主题的范围。动画可跨不同的窗口。这些跨窗口动画可包括窗口间动画和/或窗口过渡动画。窗口间动画用于跨窗口使兀素动画化。窗口过渡用于使用动画来同时移动窗口/对窗口调整大小/显示窗口 /隐藏窗口。为了执行这些动画,创建覆盖图窗口来覆盖包括不同窗口的至少一部分的动画区域。各层可用于表示可作为动画的一部分移动的图像或视觉元素。这些层可被置于动画覆盖图窗口中,以跨底层窗口移动视觉元素。指示受支持的底层窗口在动画时间期间将内容直接拉到覆盖图窗口。当底层窗口不受支持时,底层窗口的图片被拉到动画覆盖图窗口,使得底层窗口被包括在动画内。当动画完成时,动画覆盖图窗口可被移除。


图I示出了示例性计算设备;图2示出了用于执行跨窗口动画的示例性系统;图3示出了显示窗口间动画和窗口过渡动画的示例性显示;图4示出了用于使用覆盖图窗口来使不同窗口之间的层动画化的跨窗口动画的过程;图5示出了包括使用覆盖图窗口来移动不同窗口 /对不同窗口调整大小的跨窗口动画的过程;图6示出了跨窗口动画所使用的系统体系结构;以及图7-10示出了说明跨窗口动画的示例性显示。
具体实施例方式现在参考其中相同的标号代表相同的元素的附图,描述各实施例。具体地,图I和相应的讨论旨在提供对在其中可实现各实施例的合适计算环境的简要、概括描述。一般而言,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、组件、数据结构和其他类型的结构。也可使用其它计算机系统配置,包括手持式设备、多处理器系统、基于微处理器或可编程消费电子产品、小型计算机、大型计算机等等。还可使用在其中任务由通过通信网络链接的远程处理设备执行的分布式计算环境。在分布式计算环境中,程序模块可位于本地和远程存储器存储设备两者中。现在参考图1,将描述在各实施例中利用的计算机100的说明性计算机架构。图I所示的计算机架构可被配置为服务器计算设备、台式计算设备、移动计算设备(例如智能电话、笔记本、平板……)并且包括中央处理单元5 (“CPU”)、包括随机存取存储器9 (“RAM”)和只读存储器(“ROM”)10的系统存储器7、以及将存储器耦合至中央处理单元(“CPU”)5的系统总线12。基本输入/输出系统存储在ROM 10中,所述基本输入/输出系统包含帮助在诸如启动期间在计算机内元件之间传递信息的基本例程。计算机100还包括用于存储操作系统16、应用24、演示/文档27、以及其它程序模块的大容量存储设备14,其他程序模块例如Web浏览器25和动画管理器26,这将在以下更为详尽地描述。大容量存储设备14通过连接至总线12的大容量存储控制器(未示出)连接到CPU5。大容量存储设备14及其相关联的计算机可读介质为计算机100提供非易失性存储。虽然此处包含的对计算机可读介质的描述涉及诸如硬盘或CD-ROM驱动器等大容量存储设备,但是计算机可读介质可以是能够由计算机100访问的任何可用介质。作为示例而非限制,计算机可读介质可包括计算机存储介质和通信介质。计算机存储介质包括以存储如计算机可读指令、数据结构、程序模块或其他数据等信息的任何方法或技术来实现的易失性和非易失性、可移动和不可移动介质。计算机存储介质还包括,但不限于,RAM、ROM、可擦除可编程只读存储器(“EPROM”)、电可擦可编程只读存储器(“EEPR0M”)、闪存或其它固态存储器技术、⑶-ROM、数字多功能盘(“DVD”)或其它光存储、磁带盒、磁带、磁盘存储或其它磁性存储设备、或能用于存储所需信息且可以由计算机100访问的任何其它介质。根据各实施例,计算机100可以使用通过诸如因特网的网络18至远程计算机的逻辑连接在联网环境中操作。计算机100可以通过连接至总线12的网络接口单元20来连接到网络18。网络连接可以是无线的和/或有线的。网络接口单元20也可用于连接到其它类型的网络和远程计算机系统。计算机100也可包括输入/输出控制器22,用于接收和处理来自诸如触摸输入设备的多个其他设备的输入。触摸输入设备可利用允许识别单次/多次触摸输入(触摸/非触摸)的任何技术。例如,技术可包括但不限于热量、手指压力、高俘获率照相机、红外光、光学捕捉、调谐的电磁感应、超声波接收器、传感麦克风、激光测距仪、阴影捕捉等。根据一个实施例,触摸输入设备可以被配置为检测接近触摸(即在离触摸输入设备的某个距离内,但是与所述触摸输入设备没有物理上接触)。触摸输入设备也可以作为显示器28。输入/输出控制器22也向一个或多个显示屏、打印机或其他类型的输出设备提供输出。相机和/或某种其他传感设备可操作来记录一个或多个用户以及捕捉计算设备的用户作出的运动和/或姿势。传感设备还可操作来捕捉诸如通过话筒口述的单词和/或CN 102929491 A



3/8页
捕捉来自用户的诸如通过键盘和/或鼠标(未描绘)的其他输入。传感设备可包括能够检测用户的移动的任何运动检测设备。例如,相机可以包括微软KINECT 运动捕捉设备,它包括多个相机和多个话筒。可以通过片上系统(S0C )来实践本发明的各实施例,其中,可以将附图中示出的每个或许多组件/处理集成到单个集成电路上。这样的SOC设备可包括一个或多个处理单元、图形单元、通信单元、系统虚拟化单元以及各种应用功能,所有这些都被集成到(或烧录到摂)芯片基板上作为单个集成电路。当经由SOC运行时,本文所描述的功能中的全部/某些可与计算机100的其它组件一起集成到单个集成电路(芯片)上。如前简述的一样,多个程序模块和数据文件可以存储在计算机100的大容量存储设备14和RAM 9内,包括适于控制联网的计算机的操作的操作系统16,如来自华盛顿州雷蒙德市的微软公司的WINDOWS SERVER 、\ViNDOWS7 操作系统。大容量存储设备14和RAM 9还可以存储一个或多个程序模块。具体来说,大容量存储设备14和RAM 9可存储一个或多个应用,诸如动画管理器26、生产力应用24 (例如,诸如微软POWERPOINT的演示应用、诸如微软WORD的文字处理应用、诸如微软OUTLOOK的消息收发应用、诸如微软EXCEL的电子表格应用等等),并且可存储一个或多个Web浏览器25。Web浏览器25可用于请求、接收、呈现以及提供与诸如网页、视频、文档等电子内容的交互。根据一实施例,Web浏览器包括来自微软公司的INTERNET EXPLORER Web浏览器应用程序。动画管理器26可位于客户机设备和/或服务器设备上(例如,在服务19内)。动画管理器26可被配置为用于向不同承租人(例如,微软OFFICE 365、微软WEB APPS、微软SHAREP0INT ONLINE)提供资源(例如服务、数据...)的应用/过程和/或基于云的多承租人服务的一部分。一般而言,动画管理器26被配置成执行跨不同窗口的动画。这些跨窗口动画可包括窗口间动画和/或窗口过渡动画。窗口间动画用于跨窗口使元素动画化和/或窗口过渡用于同时移动窗口/调整窗口大小/显示窗口/隐藏窗口。窗口间动画通常在视觉元素或层从一个窗口动画到另一窗口时使用。为了执行窗口间动画,透明覆盖图窗口可置于视觉元素在其间移动的窗口上。视觉元素然后跨两个窗口在透明覆盖图中动画化。窗口过渡通常在想要使用动画来移动窗口、调整窗口大小或显示/隐藏窗口时使用。为了执行窗口过渡动画,覆盖图窗口可位于要被动画化的底层窗口的顶部,这些窗口的内容被重定向到覆盖图窗口中以便使其内容动画化。各层可用于表示可作为动画的一部分移动的图像或视觉元素。这些层可被置于动画覆盖图窗口中,以跨底层窗口移动视觉元素。指示受支持的底层窗口在动画时间期间将内容直接拉到覆盖图窗口。当底层窗口不受支持时,底层窗口的图片被拉到动画覆盖图窗口,使得底层窗口被包括在动画内。当动画完成时,动画覆盖图窗口可被移除。关于动画管理器26的操作的附加细节将在以下提供。图2示出了用于执行跨窗口动画的示例性系统。如图所例示的,系统200包括服务210、动画管理器240、存储245、触摸屏输入设备/显示250 (例如,平板(slate))和智能电话230。如所示出的,服务210是一种基于云和/或基于企业的服务,其可被配置成提供生产力服务(例如,微软OFFICE 365、微软WEB APPS、微软POWERPOINT)。服务210提供的服务/应用中的一个或多个服务/应用的功能也可被配置为基于客户机的应用。例如,客户机设备可包括执行可跨不同窗口的动画的应用。尽管系统200显示了生产力服务,但其它服务/应用也可被配置成执行跨窗口动画。如图所例示的,服务210是向任何数目的承租人(例如,承租人1-N)提供资源215和服务的多承租人服务。根据一实施例,多承租人服务210是基于云的服务,其将资源/服务215提供给订阅该服务的承租人,以及与其他承租人数据分开地维护每个承租人的数据并保护每个承租人的数据。所例示的系统200包括检测何时已接收到触摸输入(例如,手指触摸或几乎接触触摸屏)的触摸屏输入设备/显示250 (例如,板片/平板设备)和移动电话230。可利用检测用户的触摸输入的任何类型的触摸屏。例如,触摸屏可包括一层或多层检测触摸输入的电容性材料。除了电容性材料之外或代替电容性材料,可使用其他传感器。例如,可使用红外(IR)传感器。根据一实施例,触摸屏被配置成检测与可触摸的表面接触或位于可触摸的表面上方的物体。尽管在本说明书中使用术语“上方”,应理解,触摸面板系统的定向是不相关的。术语“上方”旨在可适用于所有这样的定向。触摸屏可被配置成确定触摸输入被接收的位置(如起点、中间点和终点)。可通过任何合适的手段,包括如耦合到触摸面板的振动传感器或话筒,来检测可触摸的表面和物体之间的实际接触。用于检测接触的传感器的示例的非穷尽列表包括基于压力的机构、微机械加速计、压电器件、电容传感器、电阻传感器、感应传感器、激光振动计和LED振动计。如图所示,触摸屏输入设备/显示250和移动设备230示出了演示幻灯片的示例性显示252/232。移动电话230在显示用户界面元素256之前示出显示232。动画管理器240被配置成执行跨窗口动画,跨窗口动画可包括窗口间动画和/或窗口过渡动画。窗口间动画使一个或多个视觉元素在不同窗口上动画化(例如,打开菜单、跨不同窗口移动对象等)。窗口过渡通常在想要使用动画来移动窗口、调整窗口大小或显示/隐藏窗口时使用。在当前示例中,用户264在用户界面窗口 254中选择了文件菜单选项,以便在窗口 256中显示用户界面元素。响应于选择文件菜单选项,窗口过渡动画被执行,该动画显现为使用户界面窗口从原始大小254平滑地调整大小为展开大小256,同时使文档显示窗口 258收缩为较小的文档显示窗口 252。底层窗口可在动画期间/之前放置窗口 /调整窗口大小。动画管理器240创建覆盖图窗口,该覆盖图窗口覆盖不同窗口中动画要进行的部分(动画区域)。动画区域可被配置成包括不同窗口的一部分,或被配置成覆盖整个显示区域。例如,动画区域可被配置成包括与一个或多个应用相关联的应用窗口以及桌面区域和其它用户界面元素(例如,开始栏)。一般而言,动画区域被设置为当动画被执行时动画被包含在动画区域内的大小。一些窗口可使用支持将内容拉到覆盖图窗口(受支持的窗口)的渲染方法。其它窗口可能不能将内容直接拉到覆盖图窗口(不受支持的窗口)。指示位于动画区域内的受支持的窗口在动画期间将内容直接拉到覆盖图窗口。以此方式,正在底层窗口中执行的任何效果/动画出现在动画中(例如,光标闪烁、文本效果被应用于底层内容...)。任何不受支持的窗口的图片可被拉到动画覆盖图,使得不受支持的窗口被包括在动画内。当动画完成时,覆盖图窗口可被移除,底层窗口可被用户查看。图3示出了显示窗口间动画和窗口过渡动画的示例性显示。显示310示出了跨两个不同的底层窗口的窗口间动画。如图所示,显示310包括用户界面窗口 302、应用窗口 304、文档窗口 306、应用窗口 308和覆盖图窗口 308。跨窗口动画可包括一个或多个窗口间动画和/或一个或多个窗口过渡图像。在显示310中所示的当前示例中,元素312的动画显现为在应用窗口 304开始并继续跨文档窗口 306动画化。动画可跨一个或多个应用(例如,将元素从应用移到显示在桌面上的垃圾箱)。动画还可包括执行其它效果(例如,调整大小、淡入/淡出、改变一个或多个显示特征等)。覆盖图窗口 320被创建以覆盖跨不同窗口的动画区域。覆盖图窗口 320被定为使动画包含在覆盖图窗口 320的大小内的大小。一层或多层可被置于覆盖图窗口上以跨底层窗口移动视觉元素(例如,元素312)。如上所讨论的,指示受支持的底层窗口在动画时间期间将内容直接拉到覆盖图窗口。根据实施例,来自底层窗口的各层的父亲在动画时间期间被改变为覆盖图窗口。任何不受支持的窗口的图片可被拉到动画覆盖图,使得不受支持的窗口被包括在动画内。根据实施例,当动画完成时,覆盖图窗口 320被移除。关于窗口间动画的更多细节在图3和以下提供。显示350示出示例性的窗口过渡动画。如图所示,显示350包括用户界面窗口352/352;、文档窗口 356/356'、覆盖图窗口 360、应用窗口 368、Π元素362和用户界面窗口 364。覆盖图窗口 360被定为覆盖动画区域的大小,动画区域包括用户界面窗口 352、文档窗口 356和应用窗口 368。当前示例示出其中用户界面窗口 352被调整大小为较大大小(窗口 352'),文档窗口 356被调整大小为较小并移动至不同位置(窗口 356')而用户界面窗口 364被显示的动画。根据实施例,向动画管理器登记受动画显示影响的窗口。登记窗口旨在通过在各个动画操作中排除不受动画影响的窗口来改进动画和系统的性能。过程/应用可向动画管理器提供提示以协助设置动画参数(例如,初始/最终窗口大小/位置/可见性、裁剪区域、内容静态等)。如上所讨论的,可指示底层窗口在受支持时直接拉到覆盖图窗口 360。根据实施例,当动画在播放时,阻止窗口从用户接收输入。关于窗口间动画的更多细节在图4和以下提供。图4-5示出了跨窗口动画的说明性过程。在阅读本文中给出的例程的讨论时,应该理解,各个实施例的逻辑操作被实现为(I) 一系列运行于计算系统上的计算机实现的动作或程序模块;和/或(2)计算系统内的互连的机器逻辑电路或电路模块。这种实现是取决于实现本发明的计算系统的性能需求的选择问题。因此,所例示并构成本文中描述的实施例的逻辑操作被不同地称为操作、结构设备、动作或模块。这些操作、结构设备、动作和模块可以用软件、固件、专用数字逻辑,以及其任何组合来实现。虽然操作是以特定次序示出,但是操作的次序可改变且以其他次序来执行。图4示出了用于使用覆盖图窗口来使不同窗口之间的层动画化的跨窗口动画的过程。在开始操作之后,过程流动至操作410,在该操作处动画区域被确定。动画区域被定为覆盖窗口中在跨窗口动画期间使用的部分的大小。动画区域可包括来自一个或多个应用/过程的窗口。例如,动画可跨来自同一应用和/或来自不同应用的两个或更多个窗口。动画区域可包括显示的全部/部分。移至操作420,基于所确定的动画区域创建覆盖图窗口并对其定大小。根据实施例,覆盖图窗口包括被显示在动画区域中的窗口上方的透明背景。流至操作430,底层窗口的层的父亲被改为覆盖图窗口。在动画执行的持续时间内
8父亲被改变。转向操作440,要执行的动画被调度并执行。根据实施例,层被移动到覆盖图窗口内,跨覆盖图窗口移动层使得它跨越了其下的窗口,然后该层被置回底层窗口(例如,将父亲改为底层窗口),在底层窗口动画结束。移至操作450,该过程等待动画完成。根据实施例,可使动画为模态式的和/或动画完成通知处理器被配置成用于在覆盖图中的动画完成时提供通知。在动画时间期间,底层窗口的用户界面线程被阻塞。在此时间期间出现的任何接收到的指令可被存储并一旦动画完成即可执行。根据实施例,来自操作系统的消息在动画期间继续被处理。定时参数可用于帮助确保响应性用户界面,使得用户不会卡在等待动画完成上。例如,计算设备可具有不能快速显示动画的显卡。根据实施例,当估计动画完成将要花费比预定时间(例如,200、300,400,500毫秒)长的时间时,跨窗口动画被取消。流向操作460,底层窗口的层的父亲从覆盖图窗口改回底层窗口。转向操作470,覆盖图窗口从显示中移除。随后该过程移至结束操作并返回以处理其它动作。图5示出了包括使用覆盖图窗口来移动不同窗口 /对不同窗口调整大小的跨窗口动画的过程。在开始操作之后,过程流动至操作510,在该操作处动画区域被确定。动画区域被定为覆盖窗口中在跨窗口动画期间使用的部分的大小。动画区域可包括来自一个或多个应用/过程的窗口。例如,动画可跨来自同一应用和/或来自不同应用的两个或更多个窗口。动画区域可包括显示的全部/部分。移至操作520,基于所确定的动画区域创建覆盖图窗口并对其定大小。覆盖图窗口可包括显示在动画区域中的窗口之上的不透明背景或透明背景。流至操作530,跨窗口动画所影响的窗口可被登记。根据实施例,无论窗口是否被登记,在动画期间可见的窗口可被自动重定向到覆盖图窗口以帮助确保覆盖图描绘底层窗口树的准确图片。登记专用窗口允许客户机指定哪些窗口要被包括在动画中。这通过减少在操作期间处理的窗口的数量来帮助节省处理时间。对每一登记的窗口,花费时间来使窗口重定向到覆盖图窗口和/或捕捉它们的图片以将其带入覆盖图窗口。可在跨窗口动画之前和/或期间登记窗口。例如,可在动画期间当窗口要变为可见时登记窗口。转向操作540,可提供/接收提示。提示可用于协助纠正未被正确执行的任何行为。提示还可用于协助避免对现有的窗口布局代码作出改变。例如,为了实现当窗口被显示或隐藏时的幻灯片进入/退出效果,客户机提供定义窗口的初始位置和最终位置的提示。提示可帮助避免不必要的窗口事件触发,且可移除窗口过渡逻辑和现有的布局代码之间的互相依赖性。可将许多不同类型的提示提供给动画管理器。根据实施例,提示包括窗口的初始位置、窗口的最终位置、窗口的初始大小、窗口的最终大小、窗口的初始可见性状态、窗口的最终可见性状态、指定窗口内容为纯色的提示、指定窗口内容将不会在初始和最终状态之间改变(这不指定窗口的大小不会改变,而是指定绘制到客户端区域中的内容在其交错处是相同的)的提示、指定窗口是控件(例如,ActiveX控件)的提示、窗口将不可见(这帮助确保窗口的图像不会在动画期间被重定向,从而避免潜在昂贵的工作量)的提示、向覆盖图区域添加附加面积(例如,客户端可能想要添加更多面积以便进行将被手动应用于重定向层的旋转或其它变换)的调整大小提示以及用于在窗口过渡时实现裁剪效果的裁剪提
/Jn ο移至操作550,窗口和动画的布局被执行。层及层上的属性被设置以执行动画。流向操作560,附加层可被添加到覆盖图窗口和/或现有的层可被修改。例如,附加层可被添加以提供附加的动画效果。例如,可在动画期间的某一时刻显示图片、添加光源、添加闪烁效果等。现有层可被修改以创建/修改另一想要的动画效果。转向操作570,使用覆盖图窗口执行跨窗口动画。移至操作580,覆盖图窗口被移除。随后该过程移至结束操作并返回以处理其它动作。图6示出了如此处所述的跨窗口动画所使用的系统体系结构。由应用(例如,应用1020)和动画管理器26使用和显示的内容可被存储在不同的位置。例如,应用1020可使用目录服务1022、web门户1024、邮箱服务1026、即时消息接发存储1028和社交网站1030来使用/存储数据。应用1020可使用这些类型的系统等中的任一个。服务器1032可用于访问源以及准备和显示跨窗口动画。例如,服务器1032可为应用102生成跨窗口动画以便在客户端(例如,浏览器或某个其它窗口)显示。作为一个示例,服务器1032可以是被配置成向一个或多个用户提供生产力服务(例如,演不、电子表、文字处理、消息收发、文档协作等等)的web服务器。服务器1032可通过网络1008使用web来与客户端进行交互。服务器1032还可包括应用程序(例如,演示应用、使用动画的应用...)。可与服务器1032和演示应用交互的客户端的示例包括计算设备1002,该计算设备1002可包括任何通用个人计算机、平板计算设备1004和/或可包括智能电话的移动计算设备1006。这些设备中的任一个可从存储1016获得内容。图7-10示出了说明跨窗口动画的示例性显示。本文中所示的示例是出于例示的目的,并并不旨在进行限制。图7示出了跨窗口动画的示例性横向平板显示。显示710示出了显示演示幻灯片712的平板。尽管显示710显现为被显示在单个窗口内,但可在显示中使用多个窗口。例如,窗口 720可用于显示用户界面元素,窗口 714可用于显示演示的幻灯片的缩略图,窗口 716用于显示幻灯片712。当任何动画显现为从一个窗口移至另一窗口时,则该动画就是跨窗口动画。在当前示例中,跨窗口动画在用户界面760被显示时执行。显示710示出了动画之前的初始状态,而显示750示出了跨窗口动画被执行之后的最终状态。如果跨窗口动画未被执行,则不同元素的位置改变对用户而言可能显得不平稳。例如,代替看见用户界面窗口和文档窗口平滑的大小调整,窗口当以所确定的大小显示时对用户而言可能显得不平稳。如上所讨论的,跨窗口动画在覆盖图窗口中执行。在覆盖图以下,窗口可能已经改变了大小/位置,但是覆盖图中的动画平滑地显示位置/大小中的这些改变。覆盖图窗口使重新定位/大小调整平滑地动画化。当覆盖图窗口中的动画出现时,出现在所登记的窗口中的改变也可实时重定向,使得改变出现在登记的底层窗口中,用户仍看见底层窗口内的内容的动画。图8示出了跨窗口动画的示例性横向平板显示。显示810示出了显示演示幻灯片820的平板。尽管显示810显现为被显示在单个窗口内,但可在显示中使用多个窗口。例如,窗口可用于显示用户界面元素,窗口可用于显示其它元素,窗口可用于显示文档等。在当前示例中,跨窗口动画响应于用户交互执行。显示810示出了动画之前的初始状态,而显示850示出了跨窗口动画被执行之后的最终状态。可见,幻灯片820被收缩并被移动以显现在不同的窗口 /位置内,文档窗口的内容已用内容860来替换。从初始显示810到最终显示850执行的动画可包括不同的动画效果。例如,幻灯片820可显现为平滑收缩并移至幻灯片位置820',如显示850中所示。幻灯片820还可显现为在内容860显现在显示850内时淡化。一般而言,任何动画效果可在过渡期间应用。图9示出了跨窗口动画的示例性横向平板显示。显示910示出了显示内容915的平板。尽管显示910显现为被显示在单个窗口内,但可在显示中使用多个窗口。例如,窗口 912可用于显示用户界面元素,窗口 920可用于显示任务,窗口 930可用于显示讨论,窗口 940可用于显示社交连接器等等。在当前示例中,跨窗口动画响应于用户交互执行。显示910示出了动画之前的初始状态,而显示950示出了跨窗口动画被执行之后的最终状态。如图所示,响应于用户选择窗口 912中的任务Π元素,窗口 960被显示,窗口 930和940被重新定位,而窗口 920从显示中移除。可在跨窗口的动画期间应用一个或多个动画。图10示出了跨窗口动画的示例性横向平板显示。显示950示出了如图9中所示的平板。尽管显示950显现为被显示在单个窗口内,但可在显示中使用多个窗口。例如,窗口 912可用于显示用户界面元素,窗口 930可用于显示讨论,窗口 940可用于显示社交连接器,窗口 960可用于显示选项等等。在当前示例中,跨窗口动画响应于用户与窗口 960中所示的元素的交互执行。显示950示出了动画之前的初始状态,而显示1000示出了跨窗口动画被执行之后的最终状态。如图所示,响应于用户选择窗口 960中的飞出元素962,窗口 1060被显示,窗口930和940被重新定位,而窗口 960从显示中移除。可在跨窗口动画期间应用一个或多个动画。尽管已描述了本发明的特定实施例,但也可能存在其他实施例。此外,虽然本发明的实施例被描述为与存储在存储器和其他存储介质中的数据相关联,但是数据还可被存储在其他类型的计算机可读介质上或从其读取,诸如辅助存储设备(像硬盘、软盘、或CD-ROM)、来自因特网的载波、或其他形式的RAM或ROM。此外,所公开的方法的各步骤可以任何方式修改,包括通过对各步骤重新排序和/或插入或删除步骤,而不背离本发明。以上说明、示例和数据提供了对本发明的组成部分的制造和使用的全面描述。因为可以在不背离本发明的精神和范围的情况下做出本发明的许多实施例,所以本发明落在所附权利要求的范围内。
权利要求
1.一种用于跨窗口动画的方法,包括 确定覆盖不同窗口的一部分的动画区域; 创建定为覆盖所述动画区域的大小的覆盖图窗口; 在所述不同窗口的所述部分上显示所述覆盖图窗口; 使用所述覆盖图窗口执行动画; 在所述覆盖图窗口中显示所述动画,使得所述动画显现为跨处于所述覆盖图窗口的显示下的不同窗口;以及 当所述动画完成时,移除所述覆盖图窗口。
2.如权利要求I所述的方法,其特征在于,所述动画是以下各项中的至少一个使视觉元素在不同窗口上动画化的窗口间动画和包括以下至少其中之一的窗口过渡动画改变所述不同窗口中至少一个的大小以及移动所述不同窗口中的至少一个。
3.如权利要求I所述的方法,其特征在于,还包括将所述不同窗口的各层的父亲改为所述覆盖图窗口,并在所述动画完成之后将所述各层的父亲从所述覆盖图窗口改回所述不同窗口。
4.如权利要求I所述的方法,其特征在于,还包括登记受所述动画影响的不同窗口,使得来自登记窗口的内容在所述动画期间向所述覆盖图窗口渲染。
5.如权利要求2所述的方法,其特征在于,还包括接收指定关于在所述窗口过渡动画中受影响的不同窗口的信息的提示,所述信息包括初始窗口位置、初始窗口大小、最终窗口位置、最终窗口大小、初始窗口可见性、最终窗口可见性以及所述覆盖图窗口中的裁剪区域。
6.如权利要求I所述的方法,其特征在于,还包括阻塞用户界面线程,直到以下至少一项发生确定所述动画完成和确定所述动画何时超过预定时间段。
7.一种具有用于跨窗口动画的计算机可执行指令的计算机可读介质,包括 确定覆盖不同窗口的一部分的动画区域; 创建定为覆盖所述动画区域的大小的覆盖图窗口 ; 在所述不同窗口的所述部分上显示所述覆盖图窗口; 使用所述覆盖图窗口执行动画,其中所述动画是以下各项中的至少其中之一使视觉元素在不同窗口上动画化的窗口间动画和包括以下至少其中之一的窗口过渡动画改变所述不同窗口中至少一个的大小以及移动所述不同窗口中的至少一个;以及 在所述覆盖图窗口中显示所述动画,使得所述动画显现为跨处于所述覆盖图窗口的显示下的不同窗口。
8.一种用于跨窗口动画的系统,包括 显示器; 耦合到多承租人服务的承租人的网络连接; 处理器和计算机可读介质; 存储在所述计算机可读介质上并在所述处理器上执行的操作环境;以及 在所述操作环境的控制下操作并操作用于执行动作的过程,包括 确定覆盖不同窗口的一部分的动画区域; 创建定为覆盖所述动画区域的大小的覆盖图窗口 ;在所述不同窗口的所述部分上显示所述覆盖图窗口;使用所述覆盖图窗口执行动画,其中所述动画是以下各项中的至少其中之一使视觉元素在不同窗口上动画化的窗口间动画和包括以下至少其中之一的窗口过渡动画改变所述不同窗口中至少一个的大小以及移动所述不同窗口中的至少一个;在所述覆盖图窗口中显示所述动画,使得所述动画显现为跨处于所述覆盖图窗口的显示下的不同窗口 ;以及当所述动画完成时,移除所述覆盖图窗口。
9.如权利要求8所述的系统,其特征在于,还包括在执行所述动画之前将所述不同窗口的各层的父亲改为所述覆盖图窗口,并在所述动画完成之后将所述各层的父亲从所述覆盖图窗口改回所述不同窗口。
10.如权利要求8所述的系统,其特征在于,还包括阻塞用户界面线程,直到以下至少一项发生确定所述动画完成和确定所述动画何时超过预定时间段。
全文摘要
本发明描述跨窗口动画。动画可跨不同的窗口。这些跨窗口动画可包括窗口间动画和/或窗口过渡动画。窗口间动画用于跨窗口使元素动画化。窗口过渡用于同时对移动窗口/对窗口调整大小/显示窗口/隐藏窗口动画化。为了执行这些动画,覆盖图窗口覆盖包括两个不同窗口的至少一部分的动画区域。各层可用于表示可作为动画的一部分移动的图像或视觉元素。这些层可被置于动画覆盖图窗口中,以跨底层窗口移动视觉元素。指示受支持的底层窗口在动画期间将内容直接拉到覆盖图窗口。当底层窗口不被支持时,底层窗口的图片被拉到动画覆盖图窗口,使得底层窗口被包括在动画内。当动画完成时,动画覆盖图被移除。
文档编号G06F3/0481GK102929491SQ20121045398
公开日2013年2月13日 申请日期2012年11月13日 优先权日2011年11月14日
发明者B·C·阿林, T·R·亚当斯 申请人:微软公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1