CN102866907B - 桌面切换方法和装置 - Google Patents

桌面切换方法和装置 Download PDF

Info

Publication number
CN102866907B
CN102866907B CN201110188336.1A CN201110188336A CN102866907B CN 102866907 B CN102866907 B CN 102866907B CN 201110188336 A CN201110188336 A CN 201110188336A CN 102866907 B CN102866907 B CN 102866907B
Authority
CN
China
Prior art keywords
desktop
window
desktop window
application
trigger event
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201110188336.1A
Other languages
English (en)
Other versions
CN102866907A (zh
Inventor
杨光
李茁萌
彭勇
谢昕虬
刘红杰
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN201110188336.1A priority Critical patent/CN102866907B/zh
Priority to PCT/CN2012/078169 priority patent/WO2013004183A1/zh
Publication of CN102866907A publication Critical patent/CN102866907A/zh
Priority to US14/147,781 priority patent/US20140143708A1/en
Application granted granted Critical
Publication of CN102866907B publication Critical patent/CN102866907B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/461Saving or restoring of program or task context

Abstract

本发明公开了一种桌面切换方法和装置,属于计算机领域。所述方法包括:生成第一桌面窗口;根据第二桌面窗口,对所述第一桌面窗口进行设置;检测用户切换桌面的触发指令,并触发所述触发指令对应的触发事件;监听到所述触发事件之后,根据当前桌面窗口以及所述第一桌面窗口的设置信息,进行桌面切换。所述装置包括:框架入口模块、停靠控制模块和桌面管理模块。本发明通过上述方案实现了两个桌面窗口之间的切换,用户可以根据自己对应用的需要,选择合适的桌面,并使用桌面中的应用。另外,由于应用图标可以放置在不同桌面中,较放置在一个桌面而言,不易混淆,且便于管理。

Description

桌面切换方法和装置
技术领域
本发明涉及计算机领域,特别涉及一种桌面切换方法和装置。
背景技术
随着计算机的普及,越来越多的人都在使用计算机,计算机已经成为普通民众日常生活中不可缺少的工具之一。
对于大部分的计算机用户来说,操作系统的桌面无疑是最便捷的操作入口。用户通常将应用图标,如软件图标或文件,放置在桌面,并通过桌面启动软件或打开文件等。久而久之,桌面就会变得越来越混乱。对于大部分的普通用户来说,并不是很清楚该如何去清理桌面。在这样的背景下,催生了很多桌面管理软件,比如360安全桌面,但是这些桌面管理软件更多的定位是桌面编辑软件,允许用户通过这些软件对桌面进行管理,对桌面上的软件图标或文件进行编辑或分类等操作。
综上所述,现有的桌面管理软件允许用户对一个桌面中的应用图标进行管理,但是,众多的应用图标放置在一个桌面中,容易混淆,用户通过桌面使用应用时仍然不是很便捷。
发明内容
为了解决现有技术的问题,本发明实施例提供了一种桌面切换方法和装置。所述技术方案如下:
一种桌面切换方法,所述方法包括:
生成第一桌面窗口;
根据第二桌面窗口,对所述第一桌面窗口进行设置;
检测用户切换桌面的触发指令,并触发所述触发指令对应的触发事件;
监听到所述触发事件之后,根据当前桌面窗口以及所述第一桌面窗口的设置信息,进行桌面切换。
一种桌面切换装置,所述装置包括:
框架入口模块,用于生成第一桌面窗口;根据第二桌面窗口,对所述第一桌面窗口进行设置;
停靠控制模块,用于检测用户切换桌面的触发指令,并触发所述触发指令对应的触发事件;
桌面管理模块,用于监听到所述触发事件之后,根据当前桌面窗口以及所述第一桌面窗口的设置信息,进行桌面切换。
本发明实施例提供的技术方案带来的有益效果是:
通过生成第一桌面窗口,根据第二桌面窗口,对第一桌面窗口进行设置,检测用户切换桌面的触发指令,并触发该触发指令对应的触发事件,监听到触发事件之后,根据当前桌面窗口以及第一桌面窗口的设置信息,进行桌面切换,实现了两个桌面窗口之间的切换,用户可以根据自己对应用的需要,选择合适的桌面,并使用桌面中的应用。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例中提供的桌面管理的系统架构示意图;
图2是本发明实施例中提供的架构平台示意图;
图3是本发明实施例中提供的桌面切换方法流程图;
图4是本发明实施例中提供的加载某一应用的信息交互图;
图5是本发明实施例中提供的桌面切换装置结构示意图;
图6是本发明实施例中提供的桌面切换装置另一结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
本发明实施例提供了一种桌面管理的系统,其架构示意图参见图1所示,该系统主要包括:数据服务模块,框架平台,以及应用扩展模块。
框架平台:负责搭建第一桌面窗口的框架,第一桌面窗口在本发明实施例中可以是Q+桌面窗口;还负责根据数据服务模块提供的数据进行界面的展示,同时提供本平台的API(ApplicationProgrammingInterface,应用程序编程接口)给应用扩展模块以实现各个应用;还负责加载应用,桌面的管理,与第二桌面窗口的切换等,其中,第二桌面窗口在本发明实施例中可以是windows桌面窗口。
参见图2,架构平台包括:应用加载器(AppLoader)、任务管理器(TaskManager)、桌面管理器(DesktopMgr)、停靠控制器(Dockbar)、以及第一桌面窗口(如Q+桌面窗口)。
应用扩展模块,负责使用框架平台提供的API实现一个个具体的应用,每个应用都有一个应用标识,并将应用注册到框架平台中来,之后在框架平台下可以使用该应用。
数据服务模块,主要负责提供数据访问接口给框架平台使用,与服务器的交互,向服务器存取数据,并保持数据与服务器的同步;通过数据服务模块,保证了用户的数据都存在于服务器,可以实现用户数据的漫游。
另外,该系统还包括框架入口模块和服务器。框架入口模块:负责整个框架的初始化、加载、启动、退出,还负责软件单实例控制,命令行参数解析,软件升级等。在本发明实施例中,框架入口模块具体可以是第一桌面窗口(如Q+桌面窗口)的入口。服务器:负责用户验证,数据存储和读取等逻辑。
基于上述系统,本发明实施例还提供了一种桌面切换方法,参见图3,该方法包括:
101:生成第一桌面窗口;
其中,本步骤具体可以由框架入口模块执行。
102:根据第二桌面窗口,对第一桌面窗口进行设置;
其中,本步骤具体可以由框架入口模块执行。本实施例提供了至少两种设置方法:
第一种设置方法,第一桌面窗口与第二桌面窗口是并列关系,包括步骤102a1-102a2,进一步还可以包括102a3或102a4,具体如下:
102a1:将第一桌面窗口设置为顶层窗口;
其中,将第一桌面窗口设置为顶层窗口,具体可以通过将第一桌面窗口的父窗口设置为无(NULL)实现。
进一步的,对第一桌面窗口进行以下处理:
去掉标题(Title)属性,保留窗口客户区;加上工具窗口(toolwindow)属性,去掉窗口任务栏显示;将窗口大小设置成屏幕桌面的尺寸。
102a2:设置第一桌面窗口覆盖在第二桌面窗口之上,并且位于应用程序对应的普通窗口之下;
其中,设置第一桌面窗口覆盖在第二桌面窗口之上,具体包括:使用设置窗口顺序的函数对窗口的顺序进行设置,在该函数中指定需要设置的窗口为第一桌面窗口,并在该函数中设置第一桌面窗口的顺序为在第二桌面窗口之上,并且位于应用程序对应的普通窗口之下。根据第一桌面窗口和第二桌面窗口的具体类型,设置窗口顺序的函数可以各不相同,本实施例并不限定具体的设置窗口顺序的函数。当第二桌面窗口是windows桌面窗口,第一桌面窗口是Q+桌面窗口时,具体可以采用如下函数实现:
SetWindowPos(hQPlusWindow,HWND_BOTTOM,0,0,width,height,0);
第一个参数表示窗口句柄,本实施例中第一个参数为第一桌面窗口hQPlusWindow,即Q+桌面窗口。第二个参数表示排列顺序的句柄,本实施例中第二个参数为HWND_BOTTOM,表示将窗口置于Z序的底部。进一步的,该函数还包括其他参数,第三个参数和第四个参数分别表示水平坐标和垂直坐标;第五个参数和第六个参数分别表示宽和高;第七个参数表示窗口定位标识。
其中,应用程序对应的普通窗口可以是QQ窗口等。
102a3:设置第一桌面窗口在响应第一桌面窗口的窗口消息时,返回无激活消息(MA_NOACTIVATE),从而在用户触发第一桌面窗口时,第一桌面窗口仍位于普通窗口之下,不会被激活到普通窗口之上;
102a4:设置第一桌面窗口上的所有子控件都是绘制且无窗口化的,从而在用户触发第一桌面窗口的子控件时,第一桌面窗口仍位于普通窗口之下,不会被激活到普通窗口之上;
需要说明的是,第二桌面窗口上的所有子控件可以是窗口化的。
第二种设置方法,第一桌面窗口是第二桌面窗口的子窗口,包括步骤102b1-102b2,具体如下:
102b1:查找第二桌面窗口;
具体的,可以使用查找窗口的函数直接查找第二桌面窗口;或者,利用第二桌面窗口的孩子窗口查找第二桌面窗口,具体包括:使用查找窗口的函数查找到某一窗口,判断第二桌面窗口的孩子是否是查找到的窗口的孩子,如果是,则查找到的窗口是第二桌面窗口,查找过程结束,如果不是,使用查找与指定窗口有特定关系的窗口函数继续查找窗口,并进行上述判断,直至查找到第二桌面窗口,查找过程结束。
第二桌面窗口具体可以是windows桌面窗口。一般而言,系统桌面的名称为Progman。则查找第二桌面窗口具体可以采用以下方法:
在windowsXP下,通过FindWindow("Progman",NULL)就可以找到系统桌面。
在windows7下,由于有一个用来支持动态背景的名叫WorkerW的窗口可能会混淆查找到真正的系统桌面,而真正的系统桌面上有一个名叫SHELLDLL_DefView的孩子窗口,用来显示快捷方式图标,因此查找真正的系统桌面方法如下:
a1、HWNDhWnd=FindWindow("Progman",NULL),判断SHELLDLL_DefView是否是hWnd的孩子,如果是,查找结束,否则进入第a2步;
a2、hWnd=GetWindow(hWnd,GW_HWNDNEXT),判断SHELLDLL_DEFView是否是hWnd的孩子,如果是,查找结束;否则继续执行第a2步。
其中,FindWindow函数返回与指定字符串相匹配的窗口类名或窗口名的最顶层窗口的窗口句柄,这个函数不会查找子窗口。GetWindow函数返回与指定窗口有特定关系(如Z序或所有者)的窗口句柄。
102b2:将第一桌面窗口设置为第二桌面窗口的子窗口。
具体的,通过该第二桌面窗口的句柄,将该第一桌面窗口设置为该第二桌面窗口的子窗口。
其中,用户可以根据自己的需要,在第一桌面窗口和第二桌面窗口中放置不同的应用图标,以便于用户在不同的桌面窗口分别启用不同的应用。当然,也可以在第一桌面窗口和第二桌面窗口放置全部相同或部分相同的应用。
103:检测用户切换桌面的触发指令,并触发该触发指令对应的触发事件;
其中,本步骤具体可以由停靠控制器执行。停靠控制器浮动在屏幕的最上方,同时存在于第一桌面窗口(如Q+桌面窗口)和第二桌面窗口(如windows桌面窗口)上。
其中,触发指令可以是点击操作,移动操作或停留时间等,本实施例并不限定具体的触发指令。
104:监听到该触发事件之后,根据当前桌面窗口以及第一桌面窗口的设置信息,进行桌面切换。
其中,本步骤具体可以由桌面管理器执行。
对于第一种设置方法,即第一桌面窗口与第二桌面窗口是并列关系时,桌面切换过程为:
监听到该触发事件之后,抓取第一桌面和第二桌面的截图,将第一桌面截图和第二桌面截图拼接成一个并列的截图;如果当前桌面窗口是第二桌面,通过动画方式挤去第二桌面,并将第一桌面显示在第一桌面窗口;或者,如果当前桌面窗口是第一桌面,通过动画方式挤去第一桌面,并将第二桌面显示在第二桌面窗口。
对于第二种设置方法,即第一桌面窗口是第二桌面窗口的子窗口时,桌面切换过程为:
监听到该触发事件之后,如果当前桌面窗口是第二桌面窗口,通知该第一桌面窗口在该第二桌面窗口进行显示,具体的,第一桌面窗口可以覆盖在该第二桌面窗口上进行显示,如果当前桌面窗口是第一桌面窗口,通知该第一桌面窗口在该第二桌面窗口进行隐藏,并显示该第二桌面窗口。
步骤104中切换到第一桌面窗口之后,该方法还包括:
105:在第一桌面窗口加载某一应用,参见图4,具体包括步骤105a-105d:
105a:停靠控制器检测该用户在该第一桌面窗口触发一应用的指令,并触发相应的应用触发事件;
105b:桌面管理器监测到该应用触发事件之后,通过该应用的标识调用任务管理器运行该应用;
105c:该任务管理器根据该应用的标识查询该应用是否已经运行,105c1:如果已经运行,则无须再加载,105c2:如果没有运行,通过该应用的标识调用应用加载器加载该应用;
105d:该应用加载器根据该应用的标识查找该应用对应的代码文件,并加载该代码文件。
本发明实施例通过生成第一桌面窗口,根据第二桌面窗口,对第一桌面窗口进行设置,检测用户切换桌面的触发指令,并触发该触发指令对应的触发事件,监听到触发事件之后,根据当前桌面窗口以及第一桌面窗口的设置信息,进行桌面切换,实现了两个桌面窗口之间的切换,用户可以根据自己对应用的需要,选择合适的桌面,并使用桌面中的应用。
参见图5,本发明实施例还提供了一种桌面切换装置,该装置包括:
框架入口模块201,用于生成第一桌面窗口;根据第二桌面窗口,对第一桌面窗口进行设置;
停靠控制模块202,用于检测用户切换桌面的触发指令,并触发该触发指令对应的触发事件;
桌面管理模块203,用于监听到触发事件之后,根据当前桌面窗口以及第一桌面窗口的设置信息,进行桌面切换。
一方面,框架入口模块201在根据第二桌面窗口,对第一桌面窗口进行设置时,具体用于
设置第一桌面窗口为顶层窗口;
设置第一桌面窗口覆盖在第二桌面窗口之上,并且位于应用程序对应的普通窗口之下。
进一步的,框架入口模块201在根据第二桌面窗口,对第一桌面窗口进行设置时,还用于:
设置第一桌面窗口在响应第一桌面窗口的窗口消息时,返回无激活消息,无激活消息用于在用户触发第一桌面窗口时,第一桌面窗口位于普通窗口之下,不会被激活到普通窗口之上。
进一步的,框架入口模块201在根据第二桌面窗口,对第一桌面窗口进行设置时,还用于:
设置第一桌面窗口上的所有子控件都是绘制且无窗口化的,子控件被设置为绘制且无窗口化用于在用户触发第一桌面窗口上的子控件时,第一桌面窗口仍位于普通窗口之下,不会被激活到普通窗口之上。
进一步的,框架入口模块201在根据第二桌面窗口,对第一桌面窗口进行设置时,还用于:
对第一桌面窗口,去掉标题Title属性,保留窗口客户区;加上工具窗口toolwindow属性,去掉窗口任务栏显示;将窗口大小设置成屏幕桌面的尺寸。
桌面管理模块203,具体用于:
监听到触发事件之后,抓取第一桌面和第二桌面的截图,将第一桌面截图和第二桌面截图拼接成一个并列的截图;
如果当前桌面窗口是第二桌面,通过动画方式挤去第二桌面,并将第一桌面显示在第一桌面窗口;或者,如果当前桌面窗口是第一桌面,通过动画方式挤去第一桌面,并将第二桌面显示在第二桌面窗口。
另一方面,框架入口模块201在根据第二桌面窗口,对第一桌面窗口进行设置时,具体用于
查找第二桌面窗口;
将第一桌面窗口设置为第二桌面窗口的子窗口。
框架入口模块201在将第一桌面窗口设置为第二桌面窗口的子窗口时,具体用于
通过第二桌面窗口的句柄,将第一桌面窗口设置为第二桌面窗口的子窗口。
桌面管理模块203,具体用于:
监听到触发事件之后,如果当前桌面窗口是第二桌面窗口,通知第一桌面窗口覆盖在第二桌面窗口进行显示;或者,如果当前桌面窗口是第一桌面窗口,通知第一桌面窗口在第二桌面窗口进行隐藏,并显示第二桌面窗口。
进一步的,参见图6,该装置还包括:任务管理模块204和应用加载模块205;
当桌面切换到第一桌面窗口之后,
停靠控制模块202,还用于检测用户在第一桌面窗口触发一应用的指令,并触发相应的应用触发事件;
桌面管理模块203,还用于监测到应用触发事件之后,通过应用的标识调用任务管理器204运行应用;
任务管理模块204,用于根据应用的标识查询应用是否已经运行,如果已经运行,则不加载应用,如果没有运行,通过应用的标识调用应用加载模块205加载应用;
当加载应用时,应用加载模块205,用于根据应用的标识查找应用对应的代码文件,并加载代码文件。
本发明实施例与方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
本发明实施例通过生成第一桌面窗口,根据第二桌面窗口,对第一桌面窗口进行设置,检测用户切换桌面的触发指令,并触发该触发指令对应的触发事件,监听到触发事件之后,根据当前桌面窗口以及第一桌面窗口的设置信息,进行桌面切换,实现了两个桌面窗口之间的切换,用户可以根据自己对应用的需要,选择合适的桌面,并使用桌面中的应用。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (14)

1.一种桌面切换方法,其特征在于,所述方法包括:
生成第一桌面窗口;
根据第二桌面窗口,对所述第一桌面窗口进行设置,所述第二桌面窗口为windows桌面窗口;
检测用户切换桌面的触发指令,并触发所述触发指令对应的触发事件;
监听到所述触发事件之后,根据当前桌面窗口以及所述第一桌面窗口的设置信息,进行桌面切换;
所述根据第二桌面窗口,对所述第一桌面窗口进行设置,包括:
所述第一桌面窗口与所述第二桌面窗口是并列关系时,设置所述第一桌面窗口为顶层窗口,所述顶层窗口无父窗口;
设置所述第一桌面窗口覆盖在所述第二桌面窗口之上,并且位于应用程序对应的普通窗口之下;
设置所述第一桌面窗口在响应所述第一桌面窗口的窗口消息时,返回无激活消息,所述无激活消息用于在用户触发所述第一桌面窗口时,所述第一桌面窗口位于所述普通窗口之下,不会被激活到所述普通窗口之上;
设置所述第一桌面窗口上的所有子控件都是绘制且无窗口化的,所述子控件被设置为绘制且无窗口化用于在用户触发所述第一桌面窗口上的子控件时,所述第一桌面窗口仍位于所述普通窗口之下,不会被激活到所述普通窗口之上。
2.根据权利要求1所述的方法,其特征在于,所述根据第二桌面窗口,对所述第一桌面窗口进行设置,还包括:
对所述第一桌面窗口,去掉标题Title属性,保留窗口客户区;加上工具窗口toolwindow属性,去掉窗口任务栏显示;将窗口大小设置成屏幕桌面的尺寸。
3.根据权利要求1或2所述的方法,其特征在于,所述监听到所述触发事件之后,根据当前桌面窗口以及所述第一桌面窗口的设置信息,进行桌面切换,包括:
监听到所述触发事件之后,抓取第一桌面和第二桌面的截图,将第一桌面截图和第二桌面截图拼接成一个并列的截图;
如果当前桌面窗口是第二桌面,通过动画方式挤去第二桌面,并将第一桌面显示在第一桌面窗口;或者,如果当前桌面窗口是第一桌面,通过动画方式挤去第一桌面,并将第二桌面显示在第二桌面窗口。
4.根据权利要求1所述的方法,其特征在于,所述根据第二桌面窗口,对所述第一桌面窗口进行设置,包括:
查找第二桌面窗口;
将所述第一桌面窗口设置为所述第二桌面窗口的子窗口。
5.根据权利要求4所述的方法,其特征在于,所述将所述第一桌面窗口设置为所述第二桌面窗口的子窗口,包括:
通过所述第二桌面窗口的句柄,将所述第一桌面窗口设置为所述第二桌面窗口的子窗口。
6.根据权利要求4或5所述的方法,其特征在于,所述监听到所述触发事件之后,根据当前桌面窗口以及所述第一桌面窗口的设置信息,进行桌面切换,包括:
监听到所述触发事件之后,如果当前桌面窗口是第二桌面窗口,通知所述第一桌面窗口覆盖在所述第二桌面窗口进行显示;或者,如果当前桌面窗口是第一桌面窗口,通知所述第一桌面窗口在所述第二桌面窗口进行隐藏,并显示所述第二桌面窗口。
7.根据权利要求1所述的方法,其特征在于,当桌面切换到所述第一桌面窗口之后,所述方法还包括:
停靠控制器检测所述用户在所述第一桌面窗口触发一应用的指令,并触发相应的应用触发事件;
桌面管理器监测到所述应用触发事件之后,通过所述应用的标识调用任务管理器运行所述应用;
所述任务管理器根据所述应用的标识查询所述应用是否已经运行,如果已经运行,则不加载所述应用,如果没有运行,通过所述应用的标识调用应用加载器加载所述应用;
当加载所述应用时,所述应用加载器根据所述应用的标识查找所述应用对应的代码文件,并加载所述代码文件。
8.一种桌面切换装置,其特征在于,所述装置包括:
框架入口模块,用于生成第一桌面窗口;根据第二桌面窗口,对所述第一桌面窗口进行,所述第二桌面窗口为windows桌面窗口;
停靠控制模块,用于检测用户切换桌面的触发指令,并触发所述触发指令对应的触发事件;
桌面管理模块,用于监听到所述触发事件之后,根据当前桌面窗口以及所述第一桌面窗口的设置信息,进行桌面切换;
所述框架入口模块在根据第二桌面窗口,对所述第一桌面窗口进行设置时,具体用于
所述第一桌面窗口与所述第二桌面窗口是并列关系时,设置所述第一桌面窗口为顶层窗口,所述顶层窗口无父窗口;
设置所述第一桌面窗口覆盖在所述第二桌面窗口之上,并且位于应用程序对应的普通窗口之下;
所述框架入口模块在根据第二桌面窗口,对所述第一桌面窗口进行设置时,还用于
设置所述第一桌面窗口在响应所述第一桌面窗口的窗口消息时,返回无激活消息,所述无激活消息用于在用户触发所述第一桌面窗口时,所述第一桌面窗口位于所述普通窗口之下,不会被激活到所述普通窗口之上;
所述框架入口模块在根据第二桌面窗口,对所述第一桌面窗口进行设置时,还用于
设置所述第一桌面窗口上的所有子控件都是绘制且无窗口化的,所述子控件被设置为绘制且无窗口化用于在用户触发所述第一桌面窗口上的子控件时,所述第一桌面窗口仍位于所述普通窗口之下,不会被激活到所述普通窗口之上。
9.根据权利要求8所述的装置,其特征在于,所述框架入口模块在根据第二桌面窗口,对所述第一桌面窗口进行设置时,还用于:
对所述第一桌面窗口,去掉标题Title属性,保留窗口客户区;加上工具窗口toolwindow属性,去掉窗口任务栏显示;将窗口大小设置成屏幕桌面的尺寸。
10.根据权利要求8或9所述的装置,其特征在于,所述桌面管理模块,具体用于:
监听到所述触发事件之后,抓取第一桌面和第二桌面的截图,将第一桌面截图和第二桌面截图拼接成一个并列的截图;
如果当前桌面窗口是第二桌面,通过动画方式挤去第二桌面,并将第一桌面显示在第一桌面窗口;或者,如果当前桌面窗口是第一桌面,通过动画方式挤去第一桌面,并将第二桌面显示在第二桌面窗口。
11.根据权利要求8所述的装置,其特征在于,所述框架入口模块在根据第二桌面窗口,对所述第一桌面窗口进行设置时,具体用于
查找第二桌面窗口;
将所述第一桌面窗口设置为所述第二桌面窗口的子窗口。
12.根据权利要求11所述的装置,其特征在于,所述框架入口模块在将所述第一桌面窗口设置为所述第二桌面窗口的子窗口时,具体用于
通过所述第二桌面窗口的句柄,将所述第一桌面窗口设置为所述第二桌面窗口的子窗口。
13.根据权利要求11或12所述的装置,其特征在于,所述桌面管理模块,具体用于:
监听到所述触发事件之后,如果当前桌面窗口是第二桌面窗口,通知所述第一桌面窗口覆盖在所述第二桌面窗口进行显示;或者,如果当前桌面窗口是第一桌面窗口,通知所述第一桌面窗口在所述第二桌面窗口进行隐藏,并显示所述第二桌面窗口。
14.根据权利要求8所述的装置,其特征在于,所述装置还包括:任务管理模块和应用加载模块;
当桌面切换到所述第一桌面窗口之后,
停靠控制模块,还用于检测所述用户在所述第一桌面窗口触发一应用的指令,并触发相应的应用触发事件;
桌面管理模块,还用于监测到所述应用触发事件之后,通过所述应用的标识调用任务管理模块运行所述应用;
所述任务管理模块,用于根据所述应用的标识查询所述应用是否已经运行,如果已经运行,则不加载所述应用,如果没有运行,通过所述应用的标识调用应用加载模块加载所述应用;
当加载所述应用时,所述应用加载模块,用于根据所述应用的标识查找所述应用对应的代码文件,并加载所述代码文件。
CN201110188336.1A 2011-07-06 2011-07-06 桌面切换方法和装置 Active CN102866907B (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN201110188336.1A CN102866907B (zh) 2011-07-06 2011-07-06 桌面切换方法和装置
PCT/CN2012/078169 WO2013004183A1 (zh) 2011-07-06 2012-07-04 桌面切换方法、装置和系统
US14/147,781 US20140143708A1 (en) 2011-07-06 2014-01-06 Desktop Switching Method And Device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201110188336.1A CN102866907B (zh) 2011-07-06 2011-07-06 桌面切换方法和装置

Publications (2)

Publication Number Publication Date
CN102866907A CN102866907A (zh) 2013-01-09
CN102866907B true CN102866907B (zh) 2015-11-25

Family

ID=47436516

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201110188336.1A Active CN102866907B (zh) 2011-07-06 2011-07-06 桌面切换方法和装置

Country Status (3)

Country Link
US (1) US20140143708A1 (zh)
CN (1) CN102866907B (zh)
WO (1) WO2013004183A1 (zh)

Families Citing this family (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120159395A1 (en) 2010-12-20 2012-06-21 Microsoft Corporation Application-launching interface for multiple modes
US8689123B2 (en) 2010-12-23 2014-04-01 Microsoft Corporation Application reporting in an application-selectable user interface
US8612874B2 (en) 2010-12-23 2013-12-17 Microsoft Corporation Presenting an application change through a tile
US9104307B2 (en) 2011-05-27 2015-08-11 Microsoft Technology Licensing, Llc Multi-application environment
US9658766B2 (en) 2011-05-27 2017-05-23 Microsoft Technology Licensing, Llc Edge gesture
US9158445B2 (en) 2011-05-27 2015-10-13 Microsoft Technology Licensing, Llc Managing an immersive interface in a multi-application immersive environment
US9104440B2 (en) 2011-05-27 2015-08-11 Microsoft Technology Licensing, Llc Multi-application environment
US20130057587A1 (en) 2011-09-01 2013-03-07 Microsoft Corporation Arranging tiles
US9146670B2 (en) 2011-09-10 2015-09-29 Microsoft Technology Licensing, Llc Progressively indicating new content in an application-selectable user interface
US9460029B2 (en) 2012-03-02 2016-10-04 Microsoft Technology Licensing, Llc Pressure sensitive keys
US9075566B2 (en) 2012-03-02 2015-07-07 Microsoft Technoogy Licensing, LLC Flexible hinge spine
US20130300590A1 (en) 2012-05-14 2013-11-14 Paul Henry Dietz Audio Feedback
CN103530019B (zh) * 2013-10-11 2016-09-28 广州华多网络科技有限公司 一种切换窗口的方法和装置
US10324733B2 (en) 2014-07-30 2019-06-18 Microsoft Technology Licensing, Llc Shutdown notifications
US10254942B2 (en) 2014-07-31 2019-04-09 Microsoft Technology Licensing, Llc Adaptive sizing and positioning of application windows
US10592080B2 (en) 2014-07-31 2020-03-17 Microsoft Technology Licensing, Llc Assisted presentation of application windows
US9787576B2 (en) 2014-07-31 2017-10-10 Microsoft Technology Licensing, Llc Propagating routing awareness for autonomous networks
US10678412B2 (en) 2014-07-31 2020-06-09 Microsoft Technology Licensing, Llc Dynamic joint dividers for application windows
US10338765B2 (en) 2014-09-05 2019-07-02 Microsoft Technology Licensing, Llc Combined switching and window placement
US10949075B2 (en) 2014-11-06 2021-03-16 Microsoft Technology Licensing, Llc Application command control for small screen display
US20160132992A1 (en) 2014-11-06 2016-05-12 Microsoft Technology Licensing, Llc User interface scaling for devices based on display size
CN104965702B (zh) * 2015-06-15 2017-08-25 广东欧珀移动通信有限公司 一种智能终端的多窗口运行方法、装置及智能终端
CN106990887A (zh) * 2016-01-21 2017-07-28 阿里巴巴集团控股有限公司 信息输入方法、装置及终端设备

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101770399A (zh) * 2009-01-05 2010-07-07 联想(北京)有限公司 一种电子设备及切换其操作系统桌面的方法、装置
CN102004610A (zh) * 2010-12-02 2011-04-06 无敌科技(西安)有限公司 以拖曳行为执行或结束程序的使用者界面、系统及其方法
CN102063281A (zh) * 2011-01-14 2011-05-18 广东威创视讯科技股份有限公司 快速切换窗口布局方法及快速切换窗口布局系统

Family Cites Families (46)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0717344B1 (en) * 1994-12-13 2001-10-31 Microsoft Corporation Taskbar with start menu
US5790127A (en) * 1996-05-03 1998-08-04 Intel Corporation Supervising activations states in application sharing
US5835090A (en) * 1996-10-16 1998-11-10 Etma, Inc. Desktop manager for graphical user interface based system with enhanced desktop
US5910802A (en) * 1997-06-11 1999-06-08 Microsoft Corporation Operating system for handheld computing device having taskbar auto hide
US20110271226A1 (en) * 2001-06-08 2011-11-03 Real Enterprise Solutions Nederland B.V. Integrated Icon View in a Server-Based Computing Environment
US7010755B2 (en) * 2002-04-05 2006-03-07 Microsoft Corporation Virtual desktop manager
US7403211B2 (en) * 2003-02-13 2008-07-22 Lumapix, Inc. Method and system for interactive region segmentation
CA2537229C (en) * 2003-05-14 2012-10-16 Collaborative Sciences And Technology, Inc. Persistent portal
US10152190B2 (en) * 2003-12-15 2018-12-11 Open Invention Network, Llc Systems and methods for improved application sharing in a multimedia collaboration session
CN1690927A (zh) * 2004-04-23 2005-11-02 千乡万才科技(中国)有限公司 计算机屏幕窗口切换方法及接口
US7590945B2 (en) * 2004-06-14 2009-09-15 At&T Intellectual Property I, L.P. Viewing applications from inactive sessions
US7607090B2 (en) * 2004-06-14 2009-10-20 At&T Intellectual Property I, L.P. Frameless data presentation
US20050278650A1 (en) * 2004-06-14 2005-12-15 Sims Lisa K Floating user interface
US20050278655A1 (en) * 2004-06-14 2005-12-15 Sims Lisa K Multiple application viewing
US7523413B2 (en) * 2004-06-14 2009-04-21 At&T Intellectual Property I, L.P. Organizing session applications
US8532282B2 (en) * 2004-06-14 2013-09-10 At&T Intellectual Property I, L.P. Tracking user operations
US7490299B2 (en) * 2004-06-30 2009-02-10 International Business Machines Corporation System and method for handling unexpected focus change messages in a computing device
US20070094597A1 (en) * 2004-11-04 2007-04-26 Rostom Mohamed A Dynamic graphical user interface for a desktop environment
US20060095865A1 (en) * 2004-11-04 2006-05-04 Rostom Mohamed A Dynamic graphical user interface for a desktop environment
US8639812B2 (en) * 2005-04-12 2014-01-28 Belkin International, Inc. Apparatus and system for managing multiple computers
US20060248471A1 (en) * 2005-04-29 2006-11-02 Microsoft Corporation System and method for providing a window management mode
US7928959B1 (en) * 2005-05-05 2011-04-19 Imi Innovations Inc. System and method for multiple independent computer inputs using unique device and source identification systems
CN100367184C (zh) * 2005-07-25 2008-02-06 联想(北京)有限公司 一种多显示器系统及其窗口切换方法
US8578290B2 (en) * 2005-08-18 2013-11-05 Microsoft Corporation Docking and undocking user interface objects
US7663620B2 (en) * 2005-12-05 2010-02-16 Microsoft Corporation Accessing 2D graphic content using axonometric layer views
US20070143702A1 (en) * 2005-12-21 2007-06-21 Fabio Maggi Method, Computer Program, and System Improving the Graphical User Interface of a Desktop
US20070180398A1 (en) * 2006-01-30 2007-08-02 Mcardle James M Window cleanup via desktop icon
US8296684B2 (en) * 2008-05-23 2012-10-23 Hewlett-Packard Development Company, L.P. Navigating among activities in a computing device
US7676761B2 (en) * 2006-06-30 2010-03-09 Microsoft Corporation Window grouping
US10503342B2 (en) * 2006-08-04 2019-12-10 Apple Inc. User interface spaces
JP5137367B2 (ja) * 2006-09-21 2013-02-06 東芝情報システム株式会社 モデルベース開発補助ブロック、シミュレーションシステム及び自動コード生成方法
US20080307362A1 (en) * 2007-06-08 2008-12-11 Apple Inc. Desktop Filter
JP4971203B2 (ja) * 2008-01-07 2012-07-11 株式会社エヌ・ティ・ティ・ドコモ 情報処理装置及びプログラム
US8356258B2 (en) * 2008-02-01 2013-01-15 Microsoft Corporation Arranging display areas utilizing enhanced window states
US20090204915A1 (en) * 2008-02-08 2009-08-13 Sony Ericsson Mobile Communications Ab Method for Switching Desktop Panels in an Active Desktop
US20090204925A1 (en) * 2008-02-08 2009-08-13 Sony Ericsson Mobile Communications Ab Active Desktop with Changeable Desktop Panels
US8555185B2 (en) * 2009-06-08 2013-10-08 Apple Inc. User interface for multiple display regions
US9400659B2 (en) * 2009-09-29 2016-07-26 Verizon Patent And Licensing Inc. Graphical user interface window attachment
US8769428B2 (en) * 2009-12-09 2014-07-01 Citrix Systems, Inc. Methods and systems for generating a combined display of taskbar button group entries generated on a local machine and on a remote machine
US9116594B2 (en) * 2010-01-19 2015-08-25 Lg Electronics Inc. Mobile terminal and control method thereof
US8560960B2 (en) * 2010-11-23 2013-10-15 Apple Inc. Browsing and interacting with open windows
US9069577B2 (en) * 2010-11-23 2015-06-30 Apple Inc. Grouping and browsing open windows
US9003291B2 (en) * 2010-12-23 2015-04-07 Microsoft Technology Licensing, Llc Private pinning including task bar pinning and jump list task and item launching
US20120173986A1 (en) * 2011-01-04 2012-07-05 Motorola-Mobility, Inc. Background synchronization within a multi-environment operating system
US20120278747A1 (en) * 2011-04-28 2012-11-01 Motorola Mobility, Inc. Method and apparatus for user interface in a system having two operating system environments
US20120311457A1 (en) * 2011-06-06 2012-12-06 Cisco Technology, Inc. Merging Remote and Local Interfaces for Application Integration

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101770399A (zh) * 2009-01-05 2010-07-07 联想(北京)有限公司 一种电子设备及切换其操作系统桌面的方法、装置
CN102004610A (zh) * 2010-12-02 2011-04-06 无敌科技(西安)有限公司 以拖曳行为执行或结束程序的使用者界面、系统及其方法
CN102063281A (zh) * 2011-01-14 2011-05-18 广东威创视讯科技股份有限公司 快速切换窗口布局方法及快速切换窗口布局系统

Also Published As

Publication number Publication date
WO2013004183A1 (zh) 2013-01-10
US20140143708A1 (en) 2014-05-22
CN102866907A (zh) 2013-01-09

Similar Documents

Publication Publication Date Title
CN102866907B (zh) 桌面切换方法和装置
Stephanidis User interfaces for all: New perspectives into human-computer interaction
CN101291488B (zh) 一种在移动终端上截取屏幕的方法
CN105988860B (zh) 执行应用程序的方法及移动装置
CN101770399B (zh) 一种电子设备及切换其操作系统桌面的方法、装置
US7464341B2 (en) Canceling window close commands
CN102663003B (zh) 移动终端多web页面应用中的页面切换方法及系统
CN107786730A (zh) 一种任务管理方法及终端
EP0453386A2 (en) Hierarchical inter-panel process flow control
CN106326710A (zh) 一种快捷启动支付界面方法及移动终端
JP2015523648A (ja) ユーザインタフェース管理方法、ユーザインタフェース管理装置、プログラム及び記録媒体
CN107526477B (zh) 屏幕解锁方法、装置及终端
CN103279270B (zh) 应用程序的处理方法及装置
CN102937859A (zh) 一种基于Android操作系统的桌面系统的实现方法
CN107102853B (zh) 一种定制化移动操作系统兼容Android应用的方法
CN105892894A (zh) 一种滑屏事件冲突的处理方法及装置
CN103902258A (zh) 一种在网页中实现自定义菜单显示的方法及装置
CN106372894A (zh) 一种支付方法及移动终端
CN101216766A (zh) 原子操作封装装置和方法
CN102404633A (zh) 一种监控模块、智能电视系统及电视机
WO2023029747A1 (zh) 一种应用单例功能的实现方法和装置
CN103257788A (zh) 一种windows桌面动态图标形成方法
CN107544723A (zh) 一种应用程序的交互方法、装置及系统
CN109947504A (zh) 一种在宿主程序中执行寄宿程序的方法与设备
US20180107491A1 (en) Systems, methods, and devices for context-aware applications

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant