CN101882065B - 一种在计算机软件中实现由用户直接发指令的方法 - Google Patents

一种在计算机软件中实现由用户直接发指令的方法 Download PDF

Info

Publication number
CN101882065B
CN101882065B CN200910039269XA CN200910039269A CN101882065B CN 101882065 B CN101882065 B CN 101882065B CN 200910039269X A CN200910039269X A CN 200910039269XA CN 200910039269 A CN200910039269 A CN 200910039269A CN 101882065 B CN101882065 B CN 101882065B
Authority
CN
China
Prior art keywords
instruction
user
dynamic
past
dictionary
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.)
Expired - Fee Related
Application number
CN200910039269XA
Other languages
English (en)
Other versions
CN101882065A (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.)
Zhang Xuezhi
Original Assignee
Individual
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 Individual filed Critical Individual
Priority to CN200910039269XA priority Critical patent/CN101882065B/zh
Priority to US12/769,621 priority patent/US9201664B2/en
Publication of CN101882065A publication Critical patent/CN101882065A/zh
Application granted granted Critical
Publication of CN101882065B publication Critical patent/CN101882065B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces

Abstract

一种在计算机软件中实现由用户直接发指令的方法,所属计算机与计算系统中软件的用户界面技术领域。本发明是通过含有同义词的指令词库、指令搜索引擎和动态指令执行模块来实现在计算机软件中由用户直接发指令的方法。指令搜索引擎根据用户所输入指令搜索指令词库和用户个人指令词库,如果找到相吻合的指令,则直接执行;如果找到一个或若干个同义的或接近的指令,则把它们用一种动态的用户界面提供给用户选择并执行;如果找不到相吻合的指令或同义的指令,则给用户显示该软件中找不到所输入指令的信息。本发明简化了软件的使用。大大提高了计算机软件的易用性。

Description

一种在计算机软件中实现由用户直接发指令的方法
技术领域  本发明涉及计算机与计算系统中软件的用户界面。
背景技术  现有软件中,指令是预先编好并设置于软件的指令界面,诸如指令菜单、工具栏、对话框和属性页等里面的。用户要对软件有一定的了解才知道里面有什么功能或者能执行什么指令;知道软件具有某一指令后还要找到该指令处于用户界面的那个部分,在哪一指令菜单、工具栏或其它界面中,然后才能执行该指令。有些复杂的软件把某些指令设置于几级指令菜单之下,比较难于找到。这样就增加了软件的使用难度。本发明提供一种在软件中让用户自己直接发指令的方法,大大提高了软件的易用性。
发明内容  本发明是通过含有同义词的指令词库、指令搜索引擎和动态指令执行模块来实现由用户直接发指令的方法。指令搜索引擎根据用户所发指令搜索指令词库,如果找到相吻合的指令,则直接执行;如果找到一个或若干个同义的或接近的指令,则把它们用一种动态的用户界面提供给用户选择并执行;如果找不到相吻合或同义的指令,则给用户显示该软件中找不到所输入指令的信息。
图1是本发明技术方案的方框图。它包括指令输入模块(10)、指令搜索引擎(11)、指令词库(12)、用户个人指令词库(13)以及动态指令执行模块(14)。指令输入模块(10)接受用户的指令输入,指令可以由用户从键盘键入、由用户用语音发出而经语音识别系统导入或者由用户从写字板(Writing Pad)输入。当指令输入之后,指令搜索引擎(11)根据输入指令搜索指令词库(12)及用户的个人指令词库(13)。指令词库(12)和用户个人指令词库(13)可以是一个储存于诸如硬盘、闪存、内存等等存储介质中的数据库、一个或多个数据文档或其它数据形式。用户个人指令词库(13)也可以储存于系统的注册表(Registry)中。指令词库(12)中储存有软件里面的所有指令词语、短语以及它们的简短说明短语,并储存有这些指令词语和短语的同义词语或/和短语。这些词语和短语被分别标识为“指令”和“同义词”。每一个“指令”及其“同义词”都对应于一个唯一的ID(辨识号)。该ID将被用以调用动态指令执行模块(14)执行该指令。用户个人指令词库(13)中储存有该用户之前选择执行的指令以及对应的输入指令,它们也同样对应于该指令的ID。指令搜索引擎(11)首先搜索指令词库(12)中的“指令”,如果找到与输入指令相吻合的“指令”,则调用动态指令执行模块(14)执行该指令;如果找不到相吻合的指令,则搜索用户个人指令词库(13)中的以前的输入指令,若找到完全相同的之前的输入指令,并且该输入指令只对应一个指令,则调用动态指令执行模块(14)执行与之对应的指令,若该输入指令对应于若干个指令,则把这些指令用一个动态用户界面诸如对话框等提供给用户选择并执行;如果还未找到相吻合的指令,则搜索指令词库(12)中的“同义词”,如果找到一个或若干个与输入指令相吻合的“同义词”,则把这些“同义词”所对应的指令用动态的用户界面诸如对话框等提供给用户选择,若用户选择执行其中的一个指令,则调用动态指令执行模块(14)执行该指令,并把该指令与相对应的输入指令存入用户个人指令词库(13)中;如果找不到相吻合的“同义词”,则显示信息“该软件中找不到所输入的指令,请重新输入指令。”动态指令执行模块(14)是一个指令执行器,它根据调用函数传过来的指令ID执行相应的指令。
上述技术方案是本发明的最佳技术方案,但本发明同时也包括遵循本发明创新思想的上述技术方案的变种,比如改变上述技术方案中搜索引擎搜索指令词库和用户个人指令词库里面的“指令”和“同义词”的搜索顺序;或者通过建立一个一般的同义词词库,首先获得输入指令的同义词或同义短语,再根据这些输入指令及其同义词或同义短语来搜索指令词库及用户个人指令词库,在这种情况下,指令词库可以只收集软件里面所有指令词语、短语以及其说明短语,而不必收集同义词或短语;再比如用户个人指令词库中,可以让之前输入指令只对应于一个最近执行的指令,这样的话,只要找到输入指令,就可以直接执行其对应的最近执行过的指令。这些变化过的技术方案同样可以在计算机软件中实现由用户来发指令,不过目前来说,上述技术方案是本发明的最佳技术方案,它可以只用指令的同义词或短语而不必建构一个庞大的一般的同义词库,同时减少搜索步骤、加快程序执行速度而得到同样的功效。
本发明可以在各种通用或者专用的计算环境或者配置中使用。适用于本发明的公知的计算系统、环境和/或配置的示例包括,但不限于,个人计算机、服务器计算机、手提式或膝上型设备、多处理器系统、基于微处理器的系统、机顶盒、可编程消费电子设备、网络PC、小型计算机、大型计算机以及包括以上任何系统或设备的分布式计算环境等等。
本发明采用指令搜索引擎、带有同义词的指令词库和动态指令执行模块来实现在软件中由用户直接发出指令的功能。简化了软件的使用。大大提高了计算机软件的易用性。
附图说明
图1是本发明技术方案的方框图。
图2是本发明技术方案实施例的流程图。
具体实施方式  下面结合附图和一个实施例对本发明做进一步阐述。
图1是本发明技术方案的方框图。图2是本发明技术方案实施例的流程图。下面结合附图对本发明技术方案实施例中各步骤进行详细描述。
步骤20:用户输入指令,在本实施例中可由一个“文本输入栏”来实现。
步骤21及步骤22:搜索指令并执行指令,在本实施例中可由“文本输入栏”右侧“执行”按钮来激发开始。一旦“执行”按钮激发,指令搜索引擎首先在“文本输入栏”中读取用户输入的指令;接着搜索指令词库(12)中的指令词语或短语;如果找到相吻合的指令,则转到步骤221调用动态指令执行模块(14)执行该指令;如果找不到相吻合的指令,则搜索用户个人指令词库(13)里面的之前输入指令,若找到与输入指令一样的之前输入指令,而且该输入指令只对应于一个指令,则转到步骤221调用动态指令执行模块(14)执行与该输入指令相对应的指令,若该输入指令对应于若干个指令,则转到步骤222,为用户显示一个包含所有相对应指令的动态用户界面让用户选择并执行;如果还找不到相吻合的指令,继续搜索指令词库里面的同义词或同义短语,若找到一个或若干个相吻合同义词或同义短语,则转到步骤222,为用户显示一个包含所有与相吻合同义词或同义短语对应的指令的动态用户界面让用户选择并执行,同时把选择执行指令与输入指令对应起来保存到用户个人指令词库中;如果找不到相吻合的同义词或同义短语,则转到步骤224向用户显示下列信息:“本软件中没有你所输入的指令,请再输入相近的或者其它指令。”
步骤222:当搜索结果有若干个可选的指令时,为用户显示一个包含所有可选指令的动态用户界面,在本实施例中可以用一个含有所有可选指令按钮及一个“取消”按钮的动态对话框,若用户点击其中一个指令按钮,则转到步骤223调用动态指令执行模块(14)执行与该按钮相对应的指令,如果用户个人指令词库(13)中未保存有该输入指令/执行指令对,则把该执行的指令与输入指令对应起来保存到用户个人指令词库(13)中,若用户点击“取消”按钮,则结束该输入指令等待另一个指令输入。
本实施例上面步骤222所述的动态对话框,可以按下面方法来实现。该动态对话框上设有若干个,比方说10个,指令按钮和一个“取消”按钮。建立该动态对话框时,把可选的指令以字符串数组的形式以及相对应的ID以整数数组的形式动态地传给其类别建构元(class constructor)以代替按钮的显示名称以及对应的指令ID。显示该动态对话框时,按照可选指令的个数把多余的按钮非激活化,即“灰色化”。其余的按钮每一个对应一个指令,并显示相对应的指令作为按钮的名称。当这些按钮被点击时,其对应的处理程序直接取用对应的指令ID并用其调用动态指令执行模块(14)而执行该指令。
本实施例中,动态指令执行模块(14)可以是一个全局函数,该函数以指令的ID为依据执行相应的指令。一种实现该全局函数的准编码(Pseudo Code)如下:
CommandExecFunc(ID)
{
Switch(ID)
{
Case(1):
执行指令C1
Case(2):
执行指令C2
Case(3):
执行指令C3
Case(N)
执行指令CN
}
}
上述实施例是提供给本领域普通技术人员来实现本发明的一个实施例。本领域普通技术人员可以在遵循本发明创新思想的情况下,对上述实施例做出种种修改或变化,因此本发明的保护范围并不被上述实施例所限,而应该是符合权利要求书提到的创新性特征的最大范围。

Claims (5)

1.一种在计算机软件中实现由用户直接发指令的方法,包括:
从用户输入界面接受一个指令;
搜索指令词库里面的指令,若找到与输入指令相吻合的指令,直接调用动态指令执行模块执行;
若找不到相吻合的指令,搜索用户个人指令词库里面用户以往输入的指令,若找到相吻合的用户以往输入的指令,对于以往输入指令与以往执行指令一对一对应的情况,直接调用动态指令执行模块执行相吻合以往输入指令所对应的指令,对于以往输入指令与以往执行指令一对多对应的情况,把相吻合以往输入指令所对应的多个指令以一个动态用户界面提供给用户选择并调用动态指令执行模块执行;
若仍然找不到相吻合的以往输入的指令,则搜索指令词库里面的指令的同义词和同义短语,若找到一个或者若干个同义词或同义短语,则把它们对应的指令以一个动态用户界面提供给用户选择并调用动态指令执行模块执行,用户的选择被记录到用户个人指令词库中;
若还找不到相吻合的指令,则向用户显示该软件中找不到输入指令的信息;
其中,上面搜索指令词库里面的指令、搜索用户个人指令词库里面用户以往输入的指令和搜索指令词库里面的指令的同义词和同义短语的搜索顺序是可以改变的。
2.如权利要求1所述的实现由用户直接发指令的方法,其中指令词库包含软件中所有指令词语和指令短语以及它们的同义词语和同义短语,每个指令对应于一个唯一的ID,同义词语或者同义短语对应于与它们同义的指令的ID。
3.如权利要求1所述的实现由用户直接发指令的方法,其中用户个人指令词库记录了用户以往输入指令与用户以往选择执行指令之间的对应关系,这种对应关系可以是一对一的关系,也可以是一对多的关系。
4.如权利要求1所述的实现由用户直接发指令的方法,其中动态用户界面包括一种含有找到相吻合指令或者相吻合同义词所对应指令的按钮的动态对话框。
5.如权利要求1所述的实现由用户直接发指令的方法,其中动态指令执行模块包括一种利用指令ID执行程序结构中不同层次指令的全局函数。
CN200910039269XA 2009-05-07 2009-05-07 一种在计算机软件中实现由用户直接发指令的方法 Expired - Fee Related CN101882065B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN200910039269XA CN101882065B (zh) 2009-05-07 2009-05-07 一种在计算机软件中实现由用户直接发指令的方法
US12/769,621 US9201664B2 (en) 2009-05-07 2010-04-28 Method for users to give commands directly in computer software

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN200910039269XA CN101882065B (zh) 2009-05-07 2009-05-07 一种在计算机软件中实现由用户直接发指令的方法

Publications (2)

Publication Number Publication Date
CN101882065A CN101882065A (zh) 2010-11-10
CN101882065B true CN101882065B (zh) 2013-10-16

Family

ID=43054086

Family Applications (1)

Application Number Title Priority Date Filing Date
CN200910039269XA Expired - Fee Related CN101882065B (zh) 2009-05-07 2009-05-07 一种在计算机软件中实现由用户直接发指令的方法

Country Status (2)

Country Link
US (1) US9201664B2 (zh)
CN (1) CN101882065B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9384184B2 (en) * 2012-01-11 2016-07-05 International Business Machines Corporation Predicting a command in a command line interface
EP2667268A1 (de) * 2012-05-24 2013-11-27 Siemens Aktiengesellschaft Verfahren zum Betrieb eines Automatisierungsgeräts
JP5954049B2 (ja) * 2012-08-24 2016-07-20 カシオ電子工業株式会社 データ処理装置及びプログラム
CN105224396B (zh) * 2015-10-14 2019-10-18 深圳市金证科技股份有限公司 一种业务数据处理方法和装置

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101366024A (zh) * 2005-05-16 2009-02-11 电子湾有限公司 用于处理数据搜索请求的方法和系统

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4435752A (en) * 1973-11-07 1984-03-06 Texas Instruments Incorporated Allocation of rotating memory device storage locations
US6295391B1 (en) * 1998-02-19 2001-09-25 Hewlett-Packard Company Automatic data routing via voice command annotation
US20030120822A1 (en) * 2001-04-19 2003-06-26 Langrind Nicholas A. Isolated control plane addressing
US20020086719A1 (en) * 2000-12-29 2002-07-04 Pankaj Kedia Low power subsystem for portable computers
US7114001B2 (en) * 2001-05-11 2006-09-26 International Business Machines Corporation Predictive networking
US10235873B2 (en) * 2001-12-20 2019-03-19 Universal Electronics Inc. System and method to facilitate configuration of a controlling device
CA2467727A1 (en) * 2001-11-21 2003-05-30 Enterasys Networks, Inc. Translating configuration files among network devices
US7149983B1 (en) * 2002-05-08 2006-12-12 Microsoft Corporation User interface and method to facilitate hierarchical specification of queries using an information taxonomy
US7254784B2 (en) * 2002-09-11 2007-08-07 Peter H. Chang User-driven menu generation system with multiple submenus
US7437443B2 (en) * 2003-07-02 2008-10-14 International Business Machines Corporation Administering devices with domain state objects
US7205890B2 (en) * 2005-05-17 2007-04-17 Pro Tech Monitoring, Inc. System, method and apparatus for locating and controlling objects
US7925975B2 (en) * 2006-03-10 2011-04-12 Microsoft Corporation Searching for commands to execute in applications
US7865872B2 (en) * 2006-12-01 2011-01-04 Murex S.A.S. Producer graph oriented programming framework with undo, redo, and abort execution support
US20100004924A1 (en) * 2008-07-03 2010-01-07 Yuri Luis Paez Method and system context-aware for identifying, activating and executing software that best respond to user requests generated in natural language
US8095524B2 (en) * 2009-03-18 2012-01-10 International Business Machines Corporation Method and system for integrating personal information search and interaction on web/desktop applications

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101366024A (zh) * 2005-05-16 2009-02-11 电子湾有限公司 用于处理数据搜索请求的方法和系统

Also Published As

Publication number Publication date
US20100287499A1 (en) 2010-11-11
CN101882065A (zh) 2010-11-10
US9201664B2 (en) 2015-12-01

Similar Documents

Publication Publication Date Title
CN109408526B (zh) Sql语句生成方法、装置、计算机设备及存储介质
JP5634860B2 (ja) 第2言語モードを有する入力メソッドエディタ
US11264023B2 (en) Using multiple modality input to feedback context for natural language understanding
US8606568B1 (en) Evaluating pronouns in context
CN103064530B (zh) 输入处理方法和装置
US7742922B2 (en) Speech interface for search engines
TWI464605B (zh) 由電腦實施的方法以及輸入方法編輯器伺服器
CN107507615A (zh) 界面智能交互控制方法、装置、系统及存储介质
US11829433B2 (en) Contextual deep bookmarking
CN107221328A (zh) 修改源的定位方法及装置、计算机设备及可读介质
CN108027817A (zh) 基于用户的组关联建议查询
US20220261545A1 (en) Systems and methods for producing a semantic representation of a document
CN101882065B (zh) 一种在计算机软件中实现由用户直接发指令的方法
US8954466B2 (en) Use of statistical language modeling for generating exploratory search results
CN110222335A (zh) 一种文本分词方法及装置
CN112905752A (zh) 一种智能交互方法、装置、设备以及存储介质
KR20210065750A (ko) 검색 장치 및 방법
JP2020149539A (ja) 対話型システムの支援装置、及び対話型システムの支援方法
US20230400933A1 (en) Adaptive chord typing system
KR102356788B1 (ko) 키패드를 이용한 키워드 검색 방법 및 장치
US20240152561A1 (en) Computer-based systems and methods for training and using a machine learning model for improved processing of user queries based on inferred user intent
CN115438186A (zh) 智能对话系统架构和智能对话系统的对话方法
Singh et al. Enhancing Desktop Productivity: An Approach of Virtual Assistance for Desktop Workflow
JPH04290158A (ja) 文書作成装置
JP4992210B2 (ja) 翻訳装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
DD01 Delivery of document by public notice

Addressee: Zhang Jintao

Document name: Notification of Passing Examination on Formalities

C14 Grant of patent or utility model
GR01 Patent grant
TR01 Transfer of patent right

Effective date of registration: 20170510

Address after: 511442 Guangdong city of Guangzhou province Panyu District Yingbin Road, Southern China Biguiyuan Chui mountain sky garden 28-402

Patentee after: Zhang Xuezhi

Address before: 510665 Guangdong, Guangzhou, Zhongshan Road, Maple Road, No., No. 8, Canada garden, No. 2, 2L

Co-patentee before: Zhang Xuezhi

Patentee before: Zhang Jintao

TR01 Transfer of patent right
CI03 Correction of invention patent
CI03 Correction of invention patent

Correction item: Patentee|Address|Patentee

Correct: Zhang Jintao|510665 Guangdong, Guangzhou, Zhongshan Road, Maple Road, No., No. 8, Canada garden, No. 2, 2L|Zhang Xuezhi

False: Zhang Xuezhi|511442 Guangdong city of Guangzhou province Panyu District Yingbin Road, Southern China Biguiyuan Chui mountain sky garden 28-402

Number: 22

Volume: 33

TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20200902

Address after: 511442 Room 402, 28 Blocks, Blue Sky Garden, Cuishan, Biguiyuan, South China, Panyu District, Guangzhou City, Guangdong Province

Patentee after: Zhang Xuezhi

Address before: 510665, 2L, 2 Canadian garden, Maple Road, 8 Zhongshan Avenue, Guangzhou, Guangdong, Tianhe District

Co-patentee before: Zhang Xuezhi

Patentee before: Zhang Jintao

CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20131016