一种基于输入界面进行信息输入和执行的方法、装置的制作方法

文档序号:6604648阅读:156来源:国知局
专利名称:一种基于输入界面进行信息输入和执行的方法、装置的制作方法
技术领域
本发明涉及计算机数据处理领域,特别是涉及一种基于输入界面进行信息输入和 执行的方法、装置以及一种输入法系统。
背景技术
随着信息技术的发展和推广应用,计算机已经与人们的生活、工作密不可分。通过 人机交互界面,人们将指示信息传送给计算机,由其实现特定目的或者完成特定数据处理 功能。当前的人机交互技术,用户将所需指示信息传递给计算机的方式,一般有以下几 种(1)菜单、按钮或者图标模式通常都是在图形界面(或者字符模拟的图形界面)上,通过鼠标点选实现(鼠标 拖放应当视为一种衍生的图标操作)。当然也可以支持键盘,但需要通过方向键、Tab键等 首先定位功能入口(对应的菜单项、按钮或者图标)。用户在操作过程中需要首先找到相应 命令入口(菜单项、按钮、图标)在屏幕中的位置,然后通过鼠标或者键盘(方向键)将光 标(鼠标箭头)移动到操作对象上并进行操作(鼠标双击或者按回车键)。例如,Windows 任务栏中“开始”菜单提供了大多数常用程序的启动入口。又如,通过双击Windows桌面上 图标来启动对应的程序。虽然该方法直观易用,但是由于它是基于图形界面的定位而实现的,用户必须移 动视线找到对应命令入口在屏幕中的位置(通常还需要窗口的切换),即使对于熟练用户 也很难获得高效率;例如,如果用户正在输入文字,思路就会被打断。另外,由于图形显示区 域有限,复杂功能通常需要逐级确认(如多层菜单),进一步降低了使用效率,例如,Word软 件中的很多功能图标,一般用户都难以找到。(2)快捷键模式该方式是指通过指定的按键或者按键组合来调用程序指令,可以提高效率。为了 不干扰正常的键盘输入,快捷键一般需要避开常用按键(组合)。一般通过标准键盘上的功 能键或者组合键实现。例如在Windows桌面上按F3功能键或者Win_F组合键启动文件检 索功能。对于通过功能键或者组合键实现的快捷键,键位与被调用指令所实现的功能之间 的语义联系非常弱。在这种情况下,用户要记住大量快捷键键位是非常困难的。(3)输入界面模式前两种模式下,对于用户所希望执行的操作,仅仅给出启动信息即可,但是在实际 应用中,还有很多操作的执行,是需要用户给出更多的个性化信息的,以确定用户所需执行 的具体操作内容。例如,对于浏览网页的操作,就需要用户在浏览器地址输入栏中输入自己希望打 开的网页网址,再通过回车或者确认按钮启动所需打开特定网页的操作。再例如,在系统运行窗口的命令输入栏中,需要用户输入自己希望运行的程序名称或者操作指令,再通过回车或者确认按钮启动相应程序或者操作的运行操作。举例来说, 在操作系统命令行中键入calc然后回车便可以启动计算器程序calc. exe0但是其仍然存在一些缺陷由于上述人机交互的模式都是仅仅从信息传递的角度设计的,其没有考虑信息生 成过程(如,用键盘或者输入法系统得到信息),二者之间的连接并不具有高效率。例如,对于习惯使用输入法系统的用户而言(无论何种语言或何种编码方式),尤 其是正在应用输入法系统进行其他信息输入时,当其通过输入界面启动某个特定操作时, 都需要执行以下步骤将光标焦点移动至操作命令的输入界面中;关闭或者切换当前输入法(如关闭中文输入法或者切换为英文输入状态),以能 够直接输入键盘字母;输入操作参数信息;通过回车或者确认按钮启动相应操作。由于现有人机交互界面中的操作命令输入界面,比较便利的均是直接键盘输入, 对于需要提供候选项的输入法系统而言,其并不便利,因此,用户需要关闭或者切换当前输 入法,造成用户使用不便,降低效率。并且,因为用户在打字的时候,通常最先想到的是打什 么内容(如网址或程序名称),而不易先想到关闭或者切换输入法,所以在更多情况下,可 能出现用户敲击了几个字母键,出现了输入法的候选界面,才发现没有关闭或者切换当前 输入法,需要切换后重新输入,导致效率的进一步降低。综上所述,迫切需要本领域技术人员解决的一个技术问题是如何能够改进现有 的通过输入界面输入参数信息以启动相应操作的过程,以提高人机交互的效率,减少用户 的操作步骤。

发明内容
本发明所要解决的技术问题是提供一种基于输入界面进行信息输入和执行的方 法、装置,能够改善现有技术下用户的使用体验,减少用户的无效操作步骤,提高用户人机 交互的效率。相应的,本发明还提供了一种输入法系统,能够适应用户在不用输入窗口或应用 之间的切换,改善现有技术下用户的使用体验,减少用户的无效操作步骤,提高用户人机交
互的效率。为了解决上述问题,一方面,根据本发明的实施例,公开了一种基于输入界面进行 指令执行的方法,具体可以包括输入法系统获取光标焦点所在的输入界面的环境信息; 获取用户指向该输入界面的输入内容;输入法系统将用户的输入内容转变为指令信息,并 加以执行。优选的,该方法在获取用户指向该输入界面的输入内容之前,还可以包括判断所 述环境信息是否符合要求,如果符合,则执行该步骤;或者,优选的,在将用户的输入内容转变为指令信息之前,还包括判断所述环境 信息是否符合要求,如果符合,则执行该步骤。优选的,当通过环境信息确认当前输入界面为浏览器地址栏时,所述指令信息为让浏览器打开与所述输入内容相关的页面。优选的,该方法还可以包括在用户应用输入法系统,向当前输入界面进行信息输 入的过程中,触发启动获取光标焦点所在的输入界面的环境信息及后续步骤。优选的,本技术方案可以通过以下方式从输入法系统获取用户指向该输入界面的 输入内容将用户在输入法系统中确定的候选项作为指向该输入界面的输入内容;其中, 所述候选项由用户输入的编码字符串转换得到。优选的,所述输入界面为输入框;则可以通过操作系统的API获取光标焦点所在 的输入框的环境信息;所述环境信息包括当前输入框所在程序的进程名和/或当前输入框 句柄。进一步,所述环境信息还可以包括当前输入框的窗口类名和/或当前输入框的父窗 口类名。优选的,本技术方案也可以通过当前输入框句柄和操作系统的API,从输入法系统 获取用户指向该输入框的输入内容。优选的,所述输入内容可以包括用户输入的已上屏内容和/或未上屏内容。优选的,所述执行具体可以包括将转变得到的指令信息传递给当前输入界面; 当前输入界面接收到用户确认操作或者输入法系统所模拟的虚拟按键操作后,对所述指令 信息加以执行。或者,本技术方案的所述执行也可以具体包括将转变得到的指令信息传递给操 作系统提供的“运行其他程序的API ”,直接对所述指令信息加以执行。或者,所述执行也可以为所述指令信息为模拟相应按键的操作,传递所模拟的操 作信息至当前输入界面的应用程序,以触发该应用程序的相应操作。依据本发明的另一实施例,还公开了一种基于输入界面进行信息输入和执行的装 置,其位于输入法系统中,具体可以包括环境获取模块,用于获取光标焦点所在的输入界面的环境信息;内容获取模块,用于获取用户指向该输入界面的输入内容;指令模块,用于将用户的输入内容转变为指令信息,以供执行。优选的,所述装置还可以包括判断模块,用于判断所述环境信息是否符合要求, 如果符合,则通知内容获取模块执行其操作;或者,判断模块,用于判断所述环境信息是否 符合要求,如果符合,则通知指令模块执行其操作。优选的一个例子是,所述装置还可以包括判断模块,用于判断当前输入界面的环 境信息是否表明当前输入界面为浏览器地址栏,如果是,则通知指令模块执行其操作;其 中,所述指令模块所得到的指令信息为让浏览器打开与所述输入内容相关的页面。优选的,当所述输入界面为输入框时,所述环境获取模块通过操作系统的API获 取光标焦点所在的输入框的环境信息;所述环境信息包括当前输入框所在程序的进程名和 /或当前输入框句柄。优选的,所采集的环境信息还可以包括当前输入框的窗口类名和/ 或当前输入框的父窗口类名。依据本发明的另一实施例,还公开了一种输入法系统,可以包括接口单元,用于接收用户输入的编码字符串;候选项转换单元,用于将所述编码字符串转换为候选项;正常输出单元,用于将用户所确定的候选项输出;
以及,触发单元,用于接受用户触发,启动指令装置;指令装置,具体包括,环境获取模块,用于获取光标焦点所在的输入界面的环境信息;内容获取模块,用于获取用户指向该输入界面的输入内容;指令模块,用于将用户的输入内容转变为指令信息,以供执行。其中,所述指令装置还可以包括判断模块,用于判断所述环境信息是否符合要 求,如果符合,则通知内容获取模块执行其操作;或者,判断模块,用于判断所述环境信息是 否符合要求,如果符合,则通知指令模块执行其操作。在一个应用例中,所述指令装置所包括的判断模块,用于判断当前输入界面的环 境信息是否表明当前输入界面为浏览器地址栏,如果是,则通知指令模块执行其操作;其 中,所述指令模块所得到的指令信息为让浏览器打开与所述输入内容相关的页面。优选的,所述输入界面为输入框;所述环境获取模块通过操作系统的API获取光 标焦点所在的输入框的环境信息;所述环境信息包括当前输入框所在程序的进程名和/或 当前输入框句柄。优选的,所述环境信息还可以包括当前输入框的窗口类名和/或当前输 入框的父窗口类名。优选的,所述内容获取模块通过当前输入框句柄和操作系统的API,获取用户指向 该输入框的输入内容;或者,所述内容获取模块通过输入法系统内部接口,将用户所选的候 选项作为指向该输入框的输入内容。优选的,所述输入内容包括用户输入的已上屏内容和/或未上屏内容。优选的,所述指令模块具体可以包括指令转化子模块,用于将用户的输入内容转 变为指令信息;传递子模块,用于将转变得到的指令信息传递给当前输入界面;由当前输 入界面的控件接收到确认操作后,对所述指令信息加以执行;所述确认操作为用户触发或 者为所述传递子模块模拟的虚拟按键操作。当采用另一种执行模式时,所述指令模块具体可以包括指令转化子模块,用于将 用户的输入内容转变为指令信息;执行子模块,用于将转变得到的指令信息传递给操作系 统提供的“运行其他程序的API ”,直接对所述指令信息加以执行。优选的,所述指令模块也可以具体包括指令转化子模块,用于将用户的输入内容 转变为指令信息,所述指令信息为模拟相应按键的操作;传递子模块,用于传递所模拟的操 作信息至当前输入界面的应用程序,以触发该应用程序的相应操作。与现有技术相比,本申请文件所公开的技术方案具有以下优点当用户触发本发明的流程后,本发明能够自动采集当前输入框的环境信息,并从 输入法系统自动获取用户指向该输入界面的输入内容,进而将其转变为指令信息,并加以 执行。即本发明的技术方案是将用户输入内容转换为指令信息,再加以执行,其存在以 下的明显优势对于语言障碍用户,其可以采用其熟悉的语言进行指令调用;对于普通用 户,其可以采用关键词进行指令调用,而无需输入完整、正确的指令信息(包括其参数),从 而降低用户的记忆负担。其次,本发明和输入法的结合(从输入法系统获取用户所输入内容,或者直接对现有输入法进行改进),可以使得用户在各个窗口输入界面间切换时,无需关闭或者切换当 前输入法,改善现有技术下用户的使用体验,减少用户的无效操作步骤,提高用户人机交互 的效率。


图1是本发明一种基于输入界面进行信息输入和执行的方法实施例的步骤流程 图;图2是本发明一种基于输入界面进行信息输入和执行的装置实施例的结构示意 图;图3是本发明一种输入法系统实施例的结构示意图。
具体实施例方式为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实 施方式对本发明作进一步详细的说明。参照图1,示出了本发明一种基于输入界面进行信息输入和执行的方法实施例的 步骤流程图,具体包括以下步骤步骤101、输入法系统获取光标焦点所在的输入界面的环境信息;步骤102、获取用户指向该输入界面的输入内容;步骤103、输入法系统将用户的输入内容转变为指令信息,并加以执行。本发明的输入界面可以为输入框、输入窗口,也可以为某个输入区域。其中输入框 比较常用,因此在下面的实施例说明中,均采用输入框为例。其中,对于步骤101而言,其可以存在一用户触发的过程,因为并不是用户对所有 输入框的输入内容,都需要转变为指令信息加以执行。当用户以某种方式对本发明流程进 行触发启动时,开始执行上述步骤。当本发明的流程与用户输入过程紧密相连时,用户如果在某个输入框的输入过程 中触发本发明,则执行本发明的前述步骤,将用户的输入内容转变为指令信息,并加以执 行。如果用户不触发本发明,则将用户的输入内容展现在当前输入框中,不影响现有输入过程。具体如何触发,本发明并不需要加以限定,在实际应用中,可以定义1个或者多个 任意按键的任意动作作为触发条件,例如,我们可以设定回车键按下以及空格键抬起做为 触发进一步判断的条件。或者,我们可以设定在输入法系统中同时按下“F12+候选项序号”, 启动以该候选项为用户指向该输入框的输入内容的前述步骤。当然,在本发明的某些实施例中,也可以不存在模式变换触发操作,即本发明对当 前光标焦点所在输入框都进行环境检测,如果环境信息表明需要对该输入界面进行指令转 换,则进一步获取输入内容和指令转换。例如,用户在浏览器地址栏输入“baihe”,则不需要 任何触发(因为是在浏览器地址栏),直接启动本发明的功能,在确认用户输入的是“百合” 之后,生成并执行使浏览器开启与“百合”相关的网页或搜索页的指令即可。在本发明的另一个实施例中,也可以对当前光标焦点所在输入框都进行环境检 测,并获取其输入内容,基于环境和输入内容以确定是否需要对该输入界面进行指令转换。例如,用户在word中输入/baocim/,则环境信息为“word”,输入内容中存在“//”,则判断出 需要对输入界面进行指令转换,则生成将文件保存的指令,且输入的/baocim/仅用于生成 指令执行,可以并不在文件中上屏。当然,如果上述的环境检测,发现其不需要进行指令转换(如并非注册输入框环 境),则可以仍然将用户的输入内容展现在当前输入框中,不改变现有输入过程。下面对步骤101中如何得到光标焦点所在的输入框的环境信息,进行简单说明。 以下的说明仅以windows操作系统为例进行,其他操作系统可以参照。简单而言,本发明可以通过操作系统的API获取光标焦点所在的输入框的环境信 息;通常的,为了定位和区分各个输入位置,所述环境信息包括当前输入框所在程序的进程 名和当前输入框句柄。对于与本发明预置环境相吻合的情况,可以进行指令转换和执行,对 于不符合的情况,则可以仍然执行原操作,并不启动前述步骤。API (Application Programming Interface,应用程序编程接口)是一些预先定义 的函数,目的是提供应用程序与开发人员基于某软件或硬件的以访问一组例程的能力,而 又无需访问源码,或理解内部工作机制的细节。API函数包含在Windows系统目录下的动态 连接库文件中(如 User32. dll,GDI32. dll,Shel 132. dll. · ·)等。更易理解地说=Windows 这个多作业系统除了协调应用程式的执行、分配内存、管理系统资源...之外,她同时也是 一个很大的服务中心,调用这个服务中心的各种服务(每一种服务就是一个函数),可以帮 应用程式达到开启视窗、描绘图形、使用周边设备...等目的,由於这些函数服务的对象是 ISfflfM^ (Application) ,Ijfy,Application Programming Interface, API 函数。简单给出一个获取环境信息的示例过程1、获取当前所在程序的进程名(GetModuleFi IeName)这个API返回了当前输 入法所在进程的名字,例如如果当前在IE浏览器里进行输入,那么获取到的进程名就 是“iexplore.exe”。由于大多数进程名是不相同的,所以我们可以通过进程名进行初步 的判断。如果我们只关心在IE浏览器中的操作,那么我们只要判断进程名是否等同于 "iexplore. exe”就可以达到目的。实际应用中,我们会设置一个关注进程名列表,里面罗列 的所有我们关注的进程名字,用来进行初步的判断。2、获取输入框的信息,用来进一步判断是否满足条件获取当前输入框标识(GetFocus)这个API获取了当前正在接受输入内容的控件 句柄,该句柄是系统全局唯一的;获取该句柄的窗口类名(GetClassName)这个API获取了指定句柄的控件的类型 名。由于一个程序中的控件排布基本上是固定的,因此可以通过控件类型名是否符合来确 定一个控件是不是我们关注的;.获取父窗口的句柄(GetParent)这个API用来获取指定句柄控件的父窗口的句柄。本步骤的目的是确定用户的触发行为是否是在我们指定的控件内发生的,如果不 是,则不执行指令转换操作。例如,假使我们只想在IE浏览器的地址栏中按快捷键才触发 我们的指令转换执行动作,而在IE浏览器的搜索栏中按快捷键不触发我们的指令转换执 行动作。那么就需要在用户按快捷键时,区分开地址栏与搜索栏。由于IE浏览器的地址栏与搜索栏的父窗口具有不同的类型名,因此我们可以通过这种方式来精确区分同一进程下 的各个输入框。通过不同的进程名+输入控件类名(+父窗口类名、兄弟窗口类名),就可以区分任 意程序的大部分输入位置了。在步骤102中,本发明可以从输入法系统获取用户指向该输入框的输入内容。例如,可以将用户在输入法系统中选择的候选项作为指向该输入框的输入内容; 其中,所述候选项由用户输入的编码字符串转换得到。本发明对于输入法系统的编码转换 规则(五笔、拼音等)或者语言类型(英文、中文、日文或者韩文等),均不需要加以限制。从输入法系统获取用户所选候选项的方式可以有多种。例如,直接从输入法系统 内部获取,因为输入法系统接收用户选择,即获知用户所选的候选项;输入法系统可以将其 存在某个地址,在步骤102中,从该地址读出即可(即从输入法系统的某个内部接口获取)。再例如,步骤102还可以通过当前输入框句柄和操作系统的API,从输入法系统获 取用户指向该输入框的输入内容。因为输入法系统通常会将用户所选候选项通过操作系 统API (如setwindowtext)传送给当前输入框,因此,本发明通过当前输入框句柄(在步骤 101中已获得)和操作系统的API (如getwindowtext),就可以获得用户指向该输入框的输 入内容。需要说明的是,本发明所获得的用户指向该输入框的输入内容,可以包括用户所 选的一个候选项,也可以包括用户所选择的两个或者两个以上的候选项(例如,其中一个 候选项上屏了,而另一个还没有上屏)。即本发明所获取的用户输入内容可以包括用户输入 的已上屏内容和/或未上屏内容。例如,用户启动本发明时,选择了一个候选项“密云水库”,则本发明所获得的用户 指向该输入框的输入内容就可以为“密云水库”。再例如,用户启动本发明时,已经针对当前输入框选择了两个候选项“南非世界 杯”和“中国”,则本发明所获得的用户指向该输入框的输入内容就可以为“密云水库”。当 然,这两个候选项中的前一个“南非世界杯”可以在当前输入框中显示。对于这两个候选 项,如果输入法系统暂存的话,可以从输入法系统的缓存直接获取,也可以通过操作系统的 API (getwindowtext)获得,在此不再赘述。对于用户输入的内容是否在原有输入位置上上屏,本发明对此并不需要加以限 制。本发明既可以保留输入内容,例如,将用户输入的“百合”保留显示在输入框中,然 后生成并执行使浏览器开启与“百合”相关的新的网页或搜索页的指令。当然,也可以将原 显示文字“百合”,用生成的搜索“百合”的URL覆盖,在当前位置上将只保留该URL。本发明中,用户的输入内容也可以不上屏,例如,用户在word中输入/baocun/,则 可以直接生成保存指令并执行,而无需上屏任何文字。对于步骤103、本发明可以采用各种各样的转换规则和执行方式。例如,如果通过环境信息确定当前输入框为IE浏览器的地址栏,则本发明依据预 置规则可以将“搜狗”或者“sougou”转换为URL "www. sogou. com” (网址导航)。即,用户 可以输入自己熟悉的语言文字或者仅仅输入其中的关键词。具体的各种转换规则,可以由 本领域技术人员对其进行设置,本发明无需对其加以限定,在此不再赘述。
当本发明转换得到指令信息后,可以将将转变得到的指令信息传递给当前输入 框;当前输入框接收到用户确认操作后,对所述指令信息加以执行。即本发明可以将转换后 的url再设置到地址栏中,然后把控制权交还给浏览器,由依据用户指示,对所述指令信息 加以执行。具体的,例如采用SetWindowText这个API,就可以把我们组装好的url设置到 地址栏内。再例如,当前输入框为IE浏览器地址栏,用户的输入内容为“你好”,则本发明可 以直接将地址栏内容变为 http://www. sogou. com/sogou query = % C4% E3% BA% C3, 然后才让浏览器继续打开这个组装好的url ;打开就是搜索关键词为“你好”的搜索结果页对于本发明而言,还可以直接对所转换的指令信息进行执行,例如,将转变得到的 指令信息传递给操作系统提供的“运行其他程序的API,,,直接对所述指令信息加以执行。例如,将前述的URL "www. sogou. com",直接通过系统提供的“运行其他程序的 API” (例如,ShellExecute 或者 CreateProcess),加以执行即可。再例如,系统的运行对话框(或者资源管理器的输入栏)中输入中文的命令后, 自动转化为相应的正确指令例如在运行对话框中输入了 “计算器”或“jisuanqi”并按回 车键,那么输入法会先把输入内容变为“calc. exe”,然后才把执行动作交还给运行对话框; 例如,可以将指令调用信息“calc. exe”发送至ShellExecute函数即可。实际上,本发明的输入界面可以输入框、输入窗口,也可以为某个输入区域,例如, word处理软件中的字符输入区域(当然,也可以理解为一个大的输入框)。即本发明的输 入框多种多样,例如,可以为浏览器地址栏、网页的输入栏、系统运行窗口的命令输入栏、邮 箱地址栏、邮箱的内容输入栏等等。参照图2,示出了本发明一种基于输入界面进行信息输入和执行的装置实施例的 结构框图,其位于输入法系统中,具体可以包括环境获取模块201,用于获取光标焦点所在的输入界面的环境信息;内容获取模块202,用于获取用户指向该输入界面的输入内容;指令模块203,用于将用户的输入内容转变为指令信息,以供执行。本发明的输入界面可以为输入框、输入窗口,也可以为某个输入区域。其中输入框 比较常用,因此在下面的实施例说明中,均采用输入框为例。简单的,所述内容获取模块202通过以下方式从输入法系统获取用户指向该输入 框的输入内容将用户在输入法系统中所确定的候选项作为指向该输入框的输入内容;其 中,所述候选项由用户输入的编码字符串转换得到。当然,用户确定候选项的操作可以为从 多个候选项中选择一个,也可以为针对一个选项确定的操作。在本发明的另一优选实施例中,用户指向该输入框的输入内容也可以不是候选 项,而直接是用户输入的编码字符串,例如,如果用户在邮箱的内容输入框输入时触发了本 发明的功能,接下来输入“hongSe”、“kaiti”,则当用户确认输入完毕时,可以直接生成并执 行使邮件系统将邮件文字输入内容调整为红色楷体的指令(当然,这些字符串需要与指令 库中的指令描述重合),而并不需要再让用户选择候选项“红色” “楷体”。优选的,所述指令装置还包括判断模块,用于判断所述环境信息是否符合要求, 如果符合,则通知内容获取模块执行其操作;
或者,所述指令装置采用另一种判断机制,即还包括判断模块,用于判断所述环 境信息是否符合要求,如果符合,则通知指令模块执行其操作。以浏览器地址栏为例,即所述指令装置还可以包括判断模块,用于判断当前输入 界面的环境信息是否表明当前输入界面为浏览器地址栏,如果是,则通知指令模块执行其 操作;其中,所述指令模块所得到的指令信息为让浏览器打开与所述输入内容相关的页面。在本发明的一些优选实施例中,所述环境获取模块通过操作系统的API获取光标 焦点所在的输入框的环境信息;所述环境信息包括当前输入框所在程序的进程名和/或当 前输入框句柄。进一步,所述环境信息还可以包括当前输入框的窗口类名和/或当前输入 框的父窗口类名。所述内容获取模块可以直接从输入法系统(如某个存储地址)获得用户输入内 容;所述内容获取模块也可以通过当前输入框句柄和操作系统的API,从输入法系统获取 用户指向该输入框的输入内容。所述用户指向该输入框的输入内容可以包括用户所选择的两个或者两个以上的 候选项。或者,所述用户指向该输入框的输入内容可以包括用户所选择的两个或者两个以 上的关键词。在一个实施例中,本发明将指令信息提供后输入框,由后者做进一步的执行,则所 述指令模块203具体可以包括指令转化子模块,用于将用户的输入内容转变为指令信息;传递子模块,用于将转变得到的指令信息传递给当前输入框;由当前输入框的控 件接收到用户确认操作后,对所述指令信息加以执行。当然,实际上,这个“确认操作”也可以由输入法系统模拟的虚拟按键操作所替代, 因为输入框实际上并不关心该“确认操作”是用户真实发出的,还是输入法系统模拟的。在另一个实施例中,本发明可以直接将指令信息提供给操作系统加以执行,则所 述指令模块203具体可以包括指令转化子模块,用于将用户的输入内容转变为指令信息;执行子模块,用于将转变得到的指令信息传递给操作系统提供的“运行其他程序 的API”,直接对所述指令信息加以执行。在另一个实施例中,本发明的所述指令信息为模拟相应按键的操作,传递所模拟 的操作信息至当前输入框的应用程序,以触发该应用程序的相应操作。此时的指令模块203 具体可以包括指令转化子模块,用于将用户的输入内容转变为指令信息,所述指令信息为模拟 相应按键的操作;传递子模块,用于传递所模拟的操作信息至当前输入框的应用程序,以触发该应 用程序的相应操作。当用户在word中通过输入法中输入了我们预定义的指令,比如/save/,则输入 法基于word环境和输入内容/save/,知道用户希望做保存操作,则调用系统API (keybd_ event)来模拟一次或者多次按键操作(Ctrl+S),而这个(组)被模拟的按键刚好是对应了 某个程序(例如word)的保存快捷键(Ctrl+S),从而实现输入内容->程序支持的快捷键 的转换。
进一步,输入法能获取当前输入界面的环境信息,这样可以在不同的程序中自动 切换不同的快捷键映射集合,实现在不同程序中(例如word和记事本,假设这两个程序的 保存快捷键不同)都可以通过输入/save/来进行保存操作。本发明可以作为一个独立的应用程序,单独存在,但与输入法系统密切相关(例 如,浏览器的一个插件或者一个新的系统应用),因为需要从输入法系统获取用户指向当前 输入框的输入内容;当然,本发明也可以对现有输入法系统进行改进,使其具有特定输入框 的指令快速运行功能,后者更为优选一些。参照图3,示出了本发明一种输入法系统实施例,其特征在于,包括接口单元301,用于接收用户输入的编码字符串;候选项转换单元302,用于将所述编码字符串转换为候选项;正常输出单元303,用于将用户所确定的候选项输出;以及,触发单元304,用于接受用户触发,启动指令装置;当然,在本发明的优选实施例 中,触发启动指令装置后,可以中断正常输出单元303的候选项输出,也可以不中断,如果 没有触发启动指令装置,则完全不影响正常输出单元303的操作;指令装置305,具体包括,环境获取模块3051,用于获取光标焦点所在的输入界面的环境信息;本发明的输入界面可以为输入框、输入窗口,也可以为某个输入区域。其中输入框 比较常用,因此在下面的实施例说明中,均采用输入框为例。在本发明的优选实施例中,所述环境获取模块可以通过操作系统的API获取光标 焦点所在的输入框的环境信息;所述环境信息可以包括当前输入框所在程序的进程名和/ 或当前输入框句柄。优选的,所述环境信息还可以包括当前输入框的窗口类名和/或当前 输入框的父窗口类名。这些环境信息基本可以帮助输入法系统确定当前输入框的属性和位信息。内容获取模块3052,用于获取用户指向该输入界面的输入内容;在本发明的优选实施例中,所述内容获取模块通过当前输入框句柄和操作系统的 API,获取用户指向该输入框的输入内容;或者,所述内容获取模块也可以通过输入法系统 内部接口,将用户所选的候选项作为指向该输入框的输入内容。所述输入内容可以包括用 户所选择的一个候选项,也可以包括用户所选择两个或者两个以上的候选项。指令模块3053,用于将用户的输入内容转变为指令信息,以供执行。在上述的输入法系统的输入过程中,如果用户触发启动正常输出单元,则将用户 的输入内容展现在当前输入框中,执行标准输入功能,不改变现有输入过程。如果用户触发 启动指令装置,则将用户的输入内容转变为指令信息,以供执行。例如,我们可以设定回车 键按下以及空格键抬起做为触发启动指令装置的条件,则通过检测当前输入框的环境信息 进一步判断是否要将用户的输入内容转变为指令信息,以供执行。在具体实现中,可以让输入法系统在应用程序(当前输入框)之前捕获各种按键 操作(如触发操作)。下面给出两种可行的简单实现方案a)输入法本身就具有按键处理的最高优先级。Windows操作系统关于输入法系统 的机制,决定了在一个按键按下后,操作系统先把该按键发送给输入法。在输入法处理完毕后,根据输入法的返回值,决定是否要把该按键继续发送给应用程序(当前输入框)。因此, 正常情况下,输入法系统能在第一时间知道某个按键是否按下(即某个触发操作是否被启 动)°b)某些程序可能处于功能考虑,会设置全局键盘Hook,其作用是获取了按键的最 高处理权(比a中提到的输入法的优先级还要高)。此时,输入法可以用同样的方式设置全 局键盘Hook,操作系统会自动按照“最后设置的hook具有最高优先级”的方式,来触发输入 法的键盘例程,从而使输入法在第一时间获取键盘操作。当以上机制工作正常,并且用户的按键操作满足了我们预设的触发条件时,输入 法系统就会启动指令装置,继续进行下面的进一步判断;否则,输入法将执行原本的操作 (输入等等)。在本发明的一个实施例中,所述指令装置还可以包括判断模块,用于判断所述环 境信息是否符合要求,如果符合,则通知内容获取模块执行其操作;如果不符合,则执行输 入法原本的操作(如上屏)。或者,所述指令装置采用另一种判断机制,即还包括判断模块,用于判断所述环 境信息是否符合要求,如果符合,则通知指令模块执行其操作;如果不符合,则执行输入法 原本的操作(如上屏)。在一个实施例中,本发明将指令信息提供后输入框,由后者做进一步的执行,则所 述指令模块3053具体可以包括指令转化子模块,用于将用户的输入内容转变为指令信息;传递子模块,用于将转变得到的指令信息传递给当前输入框;由当前输入框的控 件接收到确认操作后,对所述指令信息加以执行;所述确认操作为用户触发或者为所述传 递子模块模拟的虚拟按键操作。在另一个实施例中,本发明可以直接将指令信息提供给操作系统加以执行,则所 述指令模块3053具体可以包括指令转化子模块,用于将用户的输入内容转变为指令信息;执行子模块,用于将转变得到的指令信息传递给操作系统提供的“运行其他程序 的API”,直接对所述指令信息加以执行。在另一个实施例中,本发明的所述指令信息为模拟相应按键的操作,传递所模拟 的操作信息至当前输入框的应用程序,以触发该应用程序的相应操作。此时的指令模块203 具体可以包括指令转化子模块,用于将用户的输入内容转变为指令信息,所述指令信息为模拟 相应按键的操作;传递子模块,用于传递所模拟的操作信息至当前输入框的应用程序,以触发该应 用程序的相应操作。本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与 其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。对于装置实施例 而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部 分说明即可。需要在此说明的是,本发明前述的指令实现是以windows为例进行说明的但是本发明并不限于windows操作系统,完全可以应用与其他的操作系统,当然,具体实现中的信 息接口方式可能有所不同,但并不影响本发明的核心构思。其次,本发明所应用的设备不限 定于PC,还可以包括移动、手持等设备,还有机顶盒等通过电视展现浏览器内容的设备的中 间件系统等等。 以上对本发明所提供的一种基于输入界面进行信息输入和执行的方法、装置以及 一种输入法系统,进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进 行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本 领域的一般技术人员,依据本发明的思想,在具体实施方式
及应用范围上均会有改变之处, 综上所述,本说明书内容不应理解为对本发明的限制。
权利要求
一种基于输入界面进行指令执行的方法,其特征在于,包括输入法系统获取光标焦点所在的输入界面的环境信息;获取用户指向该输入界面的输入内容;输入法系统将用户的输入内容转变为指令信息,并加以执行。
2.如权利要求1所述的方法,其特征在于,在获取用户指向该输入界面的输入内容之前,还包括判断所述环境信息是否符合要 求,如果符合,则执行该步骤;或者,在将用户的输入内容转变为指令信息之前,还包括判断所述环境信息是否符合要求, 如果符合,则执行该步骤。
3.如权利要求1所述的方法,其特征在于,当通过环境信息确认当前输入界面为浏览器地址栏时,所述指令信息为让浏览器打开 与所述输入内容相关的页面。
4.如权利要求1所述的方法,其特征在于,还包括在用户应用输入法系统,向当前输入界面进行信息输入的过程中,触发启动获取光标 焦点所在的输入界面的环境信息及后续步骤。
5.如权利要求1所述的方法,其特征在于,通过以下方式从输入法系统获取用户指向 该输入界面的输入内容将用户在输入法系统中确定的候选项或者用户输入的编码字符串作为指向该输入界 面的输入内容;其中,所述候选项由用户输入的编码字符串转换得到。
6.如权利要求1所述的方法,其特征在于,所述输入界面为输入框;通过操作系统的API获取光标焦点所在的输入框的环境信息;所述环境信息包括当前 输入框所在程序的进程名和/或当前输入框句柄。
7.如权利要求6所述的方法,其特征在于,所述环境信息还包括当前输入框的窗口类 名和/或当前输入框的父窗口类名。
8.如权利要求6所述的方法,其特征在于,通过当前输入框句柄和操作系统的API,从 输入法系统获取用户指向该输入框的输入内容。
9.如权利要求1、5或8所述的方法,其特征在于,所述输入内容包括用户输入的已上屏 内容和/或未上屏内容。
10.如权利要求1所述的方法,其特征在于,所述执行具体包括将转变得到的指令信 息传递给当前输入界面;当前输入界面接收到用户确认操作或者输入法系统所模拟的虚拟按键操作后,对所述 指令信息加以执行。
11.如权利要求1所述的方法,其特征在于,所述执行具体包括将转变得到的指令信息传递给操作系统提供的“运行其他程序的API”,直接对所述指 令信息加以执行。
12.如权利要求1所述的方法,其特征在于,所述执行具体包括所述指令信息为模拟相应按键的操作,传递所模拟的操作信息至当前输入界面的应用程序,以触发该应用程序的相应操作。
13.一种基于输入界面进行信息输入和执行的装置,其特征在于,位于输入法系统中, 包括环境获取模块,用于获取光标焦点所在的输入界面的环境信息; 内容获取模块,用于获取用户指向该输入界面的输入内容; 指令模块,用于将用户的输入内容转变为指令信息,以供执行。
14.如权利要求13所述的装置,其特征在于,还包括判断模块,用于判断所述环境信息是否符合要求,如果符合,则通知内容获取模块执行 其操作; 或者,判断模块,用于判断所述环境信息是否符合要求,如果符合,则通知指令模块执行其操作。
15.如权利要求13所述的装置,其特征在于,还包括判断模块,用于判断当前输入界面的环境信息是否表明当前输入界面为浏览器地址 栏,如果是,则通知指令模块执行其操作;其中,所述指令模块所得到的指令信息为让浏览器打开与所述输入内容相关的页面。
16.如权利要求13所述的装置,其特征在于, 所述输入界面为输入框;所述环境获取模块通过操作系统的API获取光标焦点所在的输入框的环境信息;所述 环境信息包括当前输入框所在程序的进程名和/或当前输入框句柄。
17.如权利要求16所述的装置,其特征在于,所述环境信息还包括当前输入框的窗口 类名和/或当前输入框的父窗口类名。
18.一种输入法系统,其特征在于,包括接口单元,用于接收用户输入的编码字符串; 候选项转换单元,用于将所述编码字符串转换为候选项; 正常输出单元,用于将用户所确定的候选项输出; 以及,触发单元,用于接受用户触发,启动指令装置; 指令装置,具体包括,环境获取模块,用于获取光标焦点所在的输入界面的环境信息; 内容获取模块,用于获取用户指向该输入界面的输入内容; 指令模块,用于将用户的输入内容转变为指令信息,以供执行。
19.如权利要求18所述的输入法系统,其特征在于,所述指令装置还包括判断模块,用于判断所述环境信息是否符合要求,如果符合,则通知内容获取模块执行 其操作; 或者,判断模块,用于判断所述环境信息是否符合要求,如果符合,则通知指令模块执行其操作。
20.如权利要求18所述的输入法系统,其特征在于,所述指令装置还包括判断模块,用于判断当前输入界面的环境信息是否表明当前输入界面为浏览器地址 栏,如果是,则通知指令模块执行其操作;其中,所述指令模块所得到的指令信息为让浏览器打开与所述输入内容相关的页面。
21.如权利要求18所述的输入法系统,其特征在于,所述输入界面为输入框;所述环境获取模块通过操作系统的API获取光标焦点所在的输入框的环境信息;所述 环境信息包括当前输入框所在程序的进程名和/或当前输入框句柄。
22.如权利要求21所述的输入法系统,其特征在于,所述环境信息还包括当前输入框 的窗口类名和/或当前输入框的父窗口类名。
23.如权利要求18所述的输入法系统,其特征在于,所述内容获取模块通过当前输入框句柄和操作系统的API,获取用户指向该输入框的 输入内容;或者,所述内容获取模块通过输入法系统内部接口,将用户所选的候选项作为指向该 输入框的输入内容。
24.如权利要求18所述的输入法系统,其特征在于,所述输入内容包括用户输入的已 上屏内容和/或未上屏内容。
25.如权利要求18所述的输入法系统,其特征在于,所述指令模块具体包括指令转化子模块,用于将用户的输入内容转变为指令信息;传递子模块,用于将转变得到的指令信息传递给当前输入界面;由当前输入界面的控 件接收到确认操作后,对所述指令信息加以执行;所述确认操作为用户触发或者为所述传 递子模块模拟的虚拟按键操作。
26.如权利要求18所述的输入法系统,其特征在于,所述指令模块具体包括指令转化子模块,用于将用户的输入内容转变为指令信息;执行子模块,用于将转变得到的指令信息传递给操作系统提供的“运行其他程序的 API ”,直接对所述指令信息加以执行。
27.如权利要求18所述的输入法系统,其特征在于,所述指令模块具体包括指令转化子模块,用于将用户的输入内容转变为指令信息,所述指令信息为模拟相应 按键的操作;传递子模块,用于传递所模拟的操作信息至当前输入界面的应用程序,以触发该应用 程序的相应操作。
全文摘要
本发明提供了一种基于输入界面进行指令执行的方法、装置和一种输入法系统,其中该方法包括输入法系统获取光标焦点所在的输入界面的环境信息;获取用户指向该输入界面的输入内容;输入法系统将用户的输入内容转变为指令信息,并加以执行。当用户触发本发明的流程后,本发明能够自动采集当前输入框的环境信息,并从输入法系统自动获取用户指向该输入界面的输入内容,进而将其转变为指令信息,并加以执行。
文档编号G06F3/023GK101882007SQ20101020855
公开日2010年11月10日 申请日期2010年6月13日 优先权日2010年6月13日
发明者何立涛, 查文, 王小川 申请人:北京搜狗科技发展有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1