动态菜单的重排序.pdf

上传人:1*** 文档编号:651485 上传时间:2018-03-01 格式:PDF 页数:14 大小:603.16KB
返回 下载 相关 举报
摘要
申请专利号:

CN03160280.0

申请日:

2003.08.29

公开号:

CN1573687A

公开日:

2005.02.02

当前法律状态:

驳回

有效性:

无权

法律详情:

发明专利申请公布后的驳回IPC(主分类):G06F 9/44公开日:20050202|||实质审查的生效|||公开

IPC分类号:

G06F9/44; G06F9/45

主分类号:

G06F9/44; G06F9/45

申请人:

英特尔公司

发明人:

T·A·克劳森

地址:

美国加利福尼亚州

优先权:

2003.05.23 US 10/444630

专利代理机构:

中国专利代理(香港)有限公司

代理人:

陈景峻;陈霁

PDF下载: PDF下载
内容摘要

在一个实施例中,一个菜单的动态菜单重排序是这样实现的,显示多个菜单(402);接收一个菜单选择(403);根据该菜单选择,显示多个菜单选项(405),每个菜单选项分别占据一个菜单位置;接收重排序信息(408);和根据重排序信息,对至少一个菜单位置进行重排序,该菜单位置由各菜单选项占据(409)。在另一实施例中,根据重排序信息保持菜单选项位置信息;当菜单选择后,显示菜单选项,从而至少一个菜单选项占据一个用户指定的位置。

权利要求书

1.  一种方法,包括
向用户显示多个菜单;
从用户处接收一个菜单选择;
根据该菜单选择,向用户显示多个对应于被选择菜单的菜单选项,每个菜单选项分别占据一个静态菜单位置;
从用户处接收菜单选项重排序信息;和
根据该菜单选项重排序信息,对各菜单选项占据的菜单位置进行重排序。

2.
  如权利要求1所述的方法,其中菜单选项重排序信息限定了至少一个菜单选项从一个静态位置到用户指定位置的重排序。

3.
  如权利要求2所述的方法,其中该菜单选项重排序信息是用户以拖拉输入的形式提供的。

4.
  如权利要求1所述的方法,还包括:
根据用户提供的重排序信息,保持菜单选项位置信息。

5.
  如权利要求4所述的方法,其中该菜单选项重排序信息限定了至少一个菜单选项从一个静态位置到用户指定位置的重排序。

6.
  如权利要求5所述的方法,其中菜单选项重排序信息是用户以拖拉输入的形式提供的。

7.
  如权利要求5所述的方法,还包括:
向用户显示多个菜单;
从用户处接收一个随后的菜单选择;和
根据该随后的菜单选择,向用户显示多个菜单选项,其中至少一个菜单选项占据一个用户指定的位置。

8.
  如权利要求7所述的方法,其中菜单选项重排序信息是用户以拖拉输入的形式提供的。

9.
  如权利要求8所述的方法,其中菜单是以菜单栏的形式显示的。

10.
  如权利要求8所述的方法,其中菜单选项是以下拉菜单的形式显示的。

11.
  一种系统,包括:
一处理器;
一存储装置,与该处理器连接,该存储装置用于存储指令,如果该指令被处理器执行,就可以::
接收菜单选项重排序信息;和
根据该菜单选项重排序信息,对至少一个菜单选项占据的菜单选项位置重排序。

12.
  如权利要求11所述的系统,还包括指令,如果该指令被处理器执行,就可以:
显示多个菜单;
接收一个菜单选择;和
根据该菜单选择,显示多个菜单选项,其中至少一个菜单选项占据一个由菜单选项重排序信息指定的菜单位置。

13.
  如权利要求11所述的系统,还包括指令,如果该指令被处理器执行,就可以:
根据菜单选项重排序信息,保持菜单选项位置信息。

说明书

动态菜单的重排序
技术领域
本发明通常涉及计算机系统,并且特别涉及可以包括在,例如图形用户界面中的菜单的设计和操作。
背景技术
图形用户界面(GUI)是很多现代计算机操作系统,例如基于Windows的操作系统(Windows OS)的一种常见和有用的属性。Windows OS在很多硬件平台上运行,例如包括手提式个人计算机(PC)、台式PC、工作站和网络服务器。
当运行Windows OS中的一个应用程序时,用户将经常看到一系列的屏幕画面,这些画面中可能依次包括一个或多个窗口。一个屏幕或一个窗口经常向用户提供多个菜单,这些菜单通过文本标号或图标来进行识别。通常,菜单位于一个菜单栏中,该菜单栏包括多个相关菜单。用户可以利用例如鼠标或键盘来选择菜单。当选中一个菜单时,该Windows OS通过显示构成该用户选择的菜单的一组菜单选项来进行响应。该菜单选项的表现形式可以是下拉菜单的形式,该下拉菜单源于被选择的菜单。该下拉菜单依次包括多个菜单选项,通常以垂直堆栈的形式排列。只要用户保持菜单打开,菜单选项就将保持有效。
作为一个菜单驱动的GUI的使用例子,假设一个PC用户正在运行一个文字处理应用程序。该应用程序的菜单栏可能除了其它菜单外,还包括一个文件菜单。当用户选择文件菜单时,将出现一个下拉菜单,它包括例如剪切、复制、粘贴和替换等菜单选项(命令)。当用户选择前述的一个菜单选项时,PC将执行对应的文字处理操作。
除了菜单驱动的GUIs对应用程序的使用具有显著的贡献外,GUIs还在应用程序开发系统的设计中具有广泛的相关性。GUIs使应用程序开发过程变得明显地更加易于处理,因此至少因为这个原因,它已经成为很多可视编程语言的基本特征。
但是,除了前文所述外,至今所用的菜单栏和菜单选项的使用具有一定程度的不变性。就是说,一旦一个软件应用程序被编好,下拉菜单中的菜单结构将不能由用户进行定制。每个菜单选项都在该下拉菜单中占据一个固定的、或静态的位置。这不只表现出它不能满足特定用户的特定喜好,这种静态菜单操作位置的强加也导致很明显的操作缺点。作为一个并非完全假定的相关情况,考虑在Visual C++集成开发环境(IDE)中工作的软件开发人员的情况。当该开发人员选择Visual C++IDE的“编译”菜单时,他可以看到多个菜单选项的静态排列结构,这些菜单选项包括处于静态菜单选项位置的“编译”和“全部重新编译”选项。选择该“全部重新编译”选项可以将整个应用程序中的所有源代码转换为目标文件。另外,这些目标文件之间的必要连接也被建立以便彻底的执行。相反,该“编译”选项仅将处于开发或修改中的特定编码编译(或重新编译)为目标编码。菜单选项的静态序列有时会使开发人员偏向于选择“全部重新编译”选项,虽然他本来是想选择“编译”选项。虽然开发人员仅仅希望使开发中的代码变为可执行,但由于该非故意的菜单选择,将执行全部重新编译,从而浪费很多处理时间(某种情况下,将达到半小时)。
因此,需要提供一种技术从而防止菜单选项用户无意或非故意地选择的可能。
附图说明
对于本领域技术人员,参照下面将要简要说明的附图将可以更好的理解本发明的动态菜单重排序技术并且它的很多特点、优点和性能将变得明显,图中相同的附图标记将表示相同或相似的元件,其中
图1是在WindowsOS中运行应用程序时可以遇到的屏幕或窗口的图形描述。
图2A是当菜单选择导致显示出包括多个菜单选项的静态下拉菜单时的屏幕的图形描述。
图2B是根据本发明的一个实施例的菜单选项的位置已经被重新排序的屏幕的图形描述。
图3是根据本发明的一个实施例的计算机系统的系统方框图。
图4是根据本发明的用于实现动态菜单重排序技术的流程图。
本领域技术人员应当可以理解图中的元件仅仅被简单和清楚的示出,而并没有必要按比例画出(除非在说明书中说明),例如,图中某些元件的尺寸可能相对于其他元件被相对夸大,以便于加强对本发明实施例的理解。
具体实施方式
在一个实施例中,提供一种技术来对各个菜单选项所占据的位置进行动态重排序,这些菜单选项包括在一个下拉菜单格式中。例如,一个计算机系统包括一个菜单驱动的GUI,该GUI从用户处接收菜单选项重排序信息。PC系统响应于该菜单选项重排序信息,将至少一个菜单选项从其静态位置重新排序到一个动态的用户定义的位置。用户定义的动态位置信息可以保存在一个配置文件中,从而使后来的菜单选择所产生地下拉菜单具有符合用户希望的菜单选项位置。
在一个实施例中,该菜单驱动的GUI可以是在Windows OS上运行的软件应用程序的属性。当运行这样一个应用程序时,用户经常可以看到类似于图1中所示的屏幕显示10的一系列屏幕显示。在标准形式下,作为当打开或操作一个软件程序时出现的典型的屏幕显示,屏幕显示10包括例如工作区11、标题栏12、菜单栏13、状态栏14和任务栏15。众所周知,标题栏12占据窗口顶部的水平空间,并包含该窗口的名字(标题)。标题栏12还可包含用于关闭和调整窗口大小的框符或按钮(未示出)。状态栏14占据窗口底部的水平空间,包含与执行的程序的当时条件相关的文本信息。与本发明目的更相关的,菜单栏13可以采用位于窗口上标题栏12紧下方的矩形框符的形式。
菜单栏13可包括多个菜单131、132、…、13n等,它们可由用户通过例如鼠标或键盘进行选择。通常,当一个菜单被选择时,WindowsOS通过显示组成用户选择的菜单的一组静态图项选项来进行响应。菜单选项可以如图2A中所示的下拉菜单20的形式出现,该下拉菜单源自于被选择的菜单。下拉菜单20包括多个菜单选项201、202、…20n,只要用户打开该菜单,这些菜单选项就保持有效。在图2A中,菜单选项以如选项1、选项2、和选项3的垂直序列的形式出现。当然,下拉菜单20可包括大于或小于三个的菜单选项,显示这三个菜单选项是试图说明并且提高简洁和清楚度。图2A中的菜单选项的位置是“静态的”,这些位置反映出GUI的先验的设计和编制,并不需要与用户对这些菜单选项中的一个或多个所希望的最佳位置相一致。
相反,图2B示出一动态(即,用户重排序)菜单21,其中菜单选项位置已经由用户、或根据用户提供的信息重新排序为符合用户的喜好或倾向的形式。注意在图2B的菜单中,在静态菜单中占据底部位置的选项3被重排序,从而占据图2B中动态菜单21中的顶部位置;即,选项3占据了菜单21中的位置211,选项2和选项3分别向下移动到重排序位置212和21n。
对菜单选项位置的动态重排序的能力被认为是代表了对包括但不局限于图3所示的计算机系统的多种计算机系统的有价值的改进。
现在参照图3,在一个实施例中,计算机系统300包括一个处理器310,该处理器包括一个通用或专用处理器。处理器310可采用微处理器、微控制器、ASIC、可编程门阵列(PGA)等。在这里,术语“计算机系统”可以指任何类型的基于处理器的系统,例如大型计算机、台式计算机、服务器计算机、手提计算机、设备、机顶盒等。
在一个实施例中,处理器310可以通过主机总线315与存储器集线器320连接,该存储器集线器320又通过存储器总线325与系统存储器330连接。存储器集线器320还可通过加速图形接口(AGP)总线333与视频控制器335连接,该视频控制器335与显示器337连接。该AGP总线333符合Intel Corporation,Santa Ckara,California于1998.5.4出版的加速图形接口说明,修订版2.0。
存储器集线器320还可以(通过一集线器链路338)与一输入/输出(I/O)集线器340连接,该集线器340与一输入/输出(I/O)扩展总线342和一周边元件扩展接口(PCI)总线344连接,该PCI总线344符合1995.6出版的PCI局部总线说明,版本为修订版2.1。该I/O扩展总线342可以与一个控制对一个或多个I/O装置访问的I/O控制器346连接。如图3所示,这些装置在一个实施例中可包括存储装置,例如软盘驱动器350和输入装置,例如键盘352和鼠标354。如图3所示,I/O集线器340还可与例如硬盘驱动器356和光盘(CD)驱动器358连接。应当理解在计算集系统300中还可以包括其它存储介质。
在一个可选实施例中,该I/O控制器346还可集成在I/O集线器340中,实现其它控制功能。PCI总线344还可与不同部件连接,例如与一网络端口连接的网络控制器360(未示出)连接。
其它装置也可与该I/O扩展总线342和PCI总线344连接。这些装置包括一输入/输出控制电路,该电路与并行端口、串行端口、非易失存储器等连接。虽然上述的描述是参照系统300中的特定元件进行的,但应该考虑到对所描述和说明的实施例的多种修改和变化也是可能的。例如,主机桥路控制器和系统桥路控制器可以实现相当于存储器集线器320和I/O集线器340所提供的功能。另外,可以使用多种总线协议中的任意一个。
在上文所述的计算机系统300中,可通过图4实现对本发明的一个实施例的全面理解,图4为一个流程图,它示出根据本发明实施例实现菜单选项动态重排序的方式的一个例子。在基于GUI的应用程序的用户操作(对应于例如程序的打开)中的点401处,用户启动操作,在点402,显示出包括多个菜单的菜单栏。在点403,等待用户选择一个菜单。当用户选择一个菜单以后,这在某些时候可由鼠标点击实现,在点404判断用户是否选择了一个先前菜单选项重排序的目标菜单。如果是,则在406,从存储器中检索该特定的重排序。用户制定的菜单位置重排序信息可以通常存储在例如一个配置文件中。然后,在屏幕上以重排序的位置向用户显示菜单选项,这些菜单选项组成用户选择的菜单。如果目标菜单不是先前用户指定的重排序的目标,则在405项用户显示静态菜单选项次序。
在另一情况中,当显示菜单选项后,在点408,操作保持注意用户接下来的进行(初始或其他)菜单选项重排序的要求。用户可通过传输菜单重排序信息的形式传达这种菜单选项重排序。在一个实施例中,用户通过将所述的菜单选项从它此时在菜单选项位置层次中出现的位置(该位置可以是静态位置或前一个重排序后的位置)拖拽到用户希望的位置来传达该菜单重排序信息。例如,利用上述假设的暗示,应用程序开发人员可将“编译”选项移动到下拉菜单中的第一或其他显著的位置。
由于大多数操作系统都可使菜单选项与拖放相关,并且相应的包括软件逻辑来实现拖放用户输入,因此对菜单选项重排序的拖放协议被认为是很有用的。但是应当注意本发明的范围并不限制在用户通过拖放输入来提供菜单位置重排序信息。用户还可以已知或正在开发的其他任何方式来提供菜单重排序信息。
在一个实施例中,应当向用户提供反馈,说明计算机系统正在处理菜单重排序请求。特别地,在用户选择(例如通过鼠标点击)希望被重排序的菜单选项的实施例中,可将该菜单选项高亮度表示。当在屏幕上拖拽菜单直到该选项到达希望的重排序位置的期间内,使被选择的菜单表现出虚像。当被选择的菜单选项正好处于位置时,对应的文本标记或图标表示出处于重排序后的位置。当鼠标点击释放时,将被重排序的菜单选项处于新的位置,其他菜单选项的位置重新定位。例如,在下拉菜单中,菜单选项简单的在菜单选项的垂直堆栈中下移。
如果没有检测到重排序请求,则在411执行被选择的菜单选项。相反,如果检测到菜单重排序请求,则在410根据用户提供的重排序信息执行菜单选项的重排序。在410,保持被选择的菜单选项的重排序状态。在一个实施例中,如上所述和如图4中所示,可以通过将用户希望的次序保存在一个配置文件中来保存菜单选项重排序信息。或者,可以通过自修改软件操作来说明用户的需要。但是,本发明并不限定一种特定的用于保留用户菜单选项次序偏好的技术。然后,在409,执行被选择的菜单操作。
下面示出简单的伪代码,它们用于在基于Microsoft FoundationClass的面向目标的编程语言来实现菜单选项重排序:
   Loadlaststateinfo();//由于我们有一个文件,载入它的值   DrawNesMentu();//一旦先前载入,,提取菜单替换静态菜单   }  }  …]]>


在至少一些实施例中,这里所述的动态重排序菜单选项的能力可以对基于GUI的软件程序在进行作业处理、电子数据表、数据库、图形和其它类似用途方面的使用具有不可否认的好处。但是,如上所述,动态菜单重排序至少同样对可能地更高级的计算机用户,例如应用程序软件开发人员具有好处。历史上,应用程序开发人员通过使用高级的基于文本的编程语言例如BASIC、C、FORTRAN、PASCAL、COBOL等的应用来工作。但是,近来,在应用程序开发中,可视化编程语言已经替代基于文本的语言,这极大的是因为可视化编程语言消除了手边的编程任务和可应用的软件解决方案之间的抽象水平。由于目前的技术发展水平,可视化编程语言固有的为菜单驱动,因此用户指定菜单选项重排序的能力在这种环境下是需要的。
在上面的描述中,本发明以试图说明并且传达对本发明的彻底理解的方式参照特定实施例进行了阐述。但是,软件和计算机系统的设计和操作领域的技术人员能够意识到可以在不脱离本发明范围的情况下,对专门描述的实施例进行修改和变化。
例如,本发明为了方便在上下文中大量描述了Windows OS。但是,这里所述的动态菜单重排序技术还可用于其它操作系统中,包括现有的和以后开发的。另外,本发明还可使用除了下拉菜单格式外的其它格式。而且,菜单重排序信息也可由用户以除了鼠标点击和键盘输入以外的其他方式来实现;并且也不用在用户操作所述软件的同时提供重排序信息。
虽然本发明已经参照有限几个实施例进行了描述,本领域技术人员将意识到其各种修改和变化。意图在于附加权利要求覆盖所有这些修改和变化,使之落入本发明的精神和范围之内。

动态菜单的重排序.pdf_第1页
第1页 / 共14页
动态菜单的重排序.pdf_第2页
第2页 / 共14页
动态菜单的重排序.pdf_第3页
第3页 / 共14页
点击查看更多>>
资源描述

《动态菜单的重排序.pdf》由会员分享,可在线阅读,更多相关《动态菜单的重排序.pdf(14页珍藏版)》请在专利查询网上搜索。

在一个实施例中,一个菜单的动态菜单重排序是这样实现的,显示多个菜单(402);接收一个菜单选择(403);根据该菜单选择,显示多个菜单选项(405),每个菜单选项分别占据一个菜单位置;接收重排序信息(408);和根据重排序信息,对至少一个菜单位置进行重排序,该菜单位置由各菜单选项占据(409)。在另一实施例中,根据重排序信息保持菜单选项位置信息;当菜单选择后,显示菜单选项,从而至少一个菜单选项占据。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 物理 > 计算;推算;计数


copyright@ 2017-2020 zhuanlichaxun.net网站版权所有
经营许可证编号:粤ICP备2021068784号-1