判断控件状态的方法

文档序号:6494408阅读:182来源:国知局
判断控件状态的方法
【专利摘要】本发明揭露一种判断控件状态的方法,包含以下步骤:通过一电子装置的一显示组件,提供一应用界面。其中,应用界面包含至少一控件,且控件对应至少一界面数据或程序状态。持续监控界面数据或程序状态是否改变。在监控到界面数据或程序状态有改变时,触发控件对应的至少一控件状态判断装置,借此使控件状态判断器判断控件状态。根据控件状态判断器的一判断结果,更新显示组件上所显示的控件的状态。
【专利说明】判断控件状态的方法
【技术领域】
[0001]本发明是有关于一种判断控件状态的方法,且特别是有关于一种在界面数据或程序状态改变时触发控件状态判断的判断控件状态的方法。
【背景技术】
[0002]丰富的界面元素被应用在微软窗口操作系统(Microsoft Windows)的窗体以及智能移动终端设备的应用接口上。其中,大部分的界面元素被使用作为控件(Control)。在操作的过程中,控件的状态常需被改变,以方便在接口上进行操作和使用。
[0003]最常见的控件状态改变是对菜单项(menu item)和工具栏按钮(toolbar button)是否启用的控制。在界面操作过程中,菜单项和工具栏按钮是否启用由多种因素决定,例如:是否具备权限、使用场景以及某些业务逻辑需要、程序运行的内部逻辑等等。举例来说,当ERP单据未保存时,审核菜单项的控件便不会启用,使得用户无法点击。
[0004]传统的控件状态控制方式是在控件操作代码中添加判断逻辑和控制逻辑,并由控件的操作事件触发判断。例如在保存按钮点击事件发生后,判断单据状态为已保存,可以进行审核操作,进而将审核菜单项设置为启用。
[0005]因此,如何在减少控件设计的复杂度的前提之下,更实时的更新控件的状态,亦成为当前相关领域亟需改进的目标。

【发明内容】

[0006]因此,本发明的一方面是在提供一种判断控件状态的方法,用以在控件的界面数据或程序状态有改变时,触发对应的控件状态判断器进行控件状态的判断。判断控件状态的方法包含以下步骤:通过一电子装置的一显示组件,提供一应用界面。其中,应用界面包含至少一控件,且控件对应至少一界面数据或程序状态。持续监控界面数据或程序状态是否改变。在监控到界面数据或程序状态有改变时,触发控件对应的至少一控件状态判断器,借此使控件状态判断器判断控件状态。根据控件状态判断器的一判断结果,更新显示组件上所显示的控件的状态。
[0007]应用本发明具有下列优点:
[0008]使用状态判断器定义控件状态判断的逻辑,而不是分别在各个控件的操作逻辑中控制,使系统更易于维护和扩展。
[0009]一个控件可以对应多个状态判断装置,一个状态判断装置也可应用于多个控件,每个装置的职责单一、逻辑互相分离,易于复用。
[0010]可以使用配置定义控件结构,使用脚本定义控件状态的判断逻辑,降低了开发门槛,提升了开发效率。
[0011 ] 不仅可以使用脚本,对于复杂业务逻辑,可编写代码定义控件状态判断器,扩大了本方法的适用范围,提高了可扩展性和灵活性。在运行时由后台线程统一管理控件状态判断器,不会造成界面响应迟缓,使用户操作体验更顺畅。【专利附图】

【附图说明】
[0012]为让本发明的上述和其它目的、特征、优点与实施例能更明显易懂,所附附图的说明如下:
[0013]图1是依照本发明一实施例的一种判断控件状态的方法的流程图。
[0014]【主要组件符号说明】
[0015]100:判断控件状态的方法
[0016]110-150:步骤
【具体实施方式】
[0017]以下将以附图及详细说明本发明的精神,任何所属【技术领域】中具有通常知识者在了解本发明的较佳实施例后,当可由本发明所教示的技术加以改变及修饰,其并不脱离本发明的精神与范围。 [0018]请参照图1,其是依照本发明一实施例的一种判断控件状态的方法的流程图。在判断控件状态的方法中,在界面数据或程序状态有改变时,触发对应的控件状态判断器进行控件状态的判断。判断控件状态的方法可经由计算机程序来进行实作。计算机程序可储存于一计算机可读取记录媒体中,而使计算机读取此记录媒体后执行此判断控件状态的方法。计算机可读取记录媒体可为只读存储器、闪存、软盘、硬盘、光盘、随身碟、磁带、可由网络存取的数据库或熟悉此技艺者可轻易思及具有相同功能的计算机可读取记录媒体。
[0019]判断控件状态的方法100包含以下步骤:
[0020]在步骤110中,通过一电子装置的一显示组件,提供一应用界面。其中,应用界面包含至少一控件,且控件对应至少一界面数据或程序状态。电子装置可为计算机、服务器、智能移动终端设备或其它类型具有显示组件的电子装置。应用界面可为操作系统的窗体上的菜单项(menuitem)、工具栏按钮(toolbar button)或其它类型具有控件的应用界面。
[0021]在步骤120中,持续监控控件对应的界面数据或程序状态是否改变。
[0022]在监控到界面数据或程序状态有改变时,触发控件对应的至少一控件状态判断器(步骤130),借此使对应的控件状态判断器判断控件的状态(步骤140)。
[0023]在步骤150中,根据控件状态判断器的一判断结果,更新显示组件上所显示的控件的状态。控件状态为控件的启用状态或可见状态。
[0024]在本发明的一些实施例中,控件可以对应多个不同的控件状态判断器。因此,触发控件对应的控件状态判断器(步骤130)的一实施例可包含以下步骤:在控件对应的控件状态判断器的数量为多个时,根据控件状态判断器的一遍历顺序,依序触发各个控件状态判断器进行判断。在控件状态判断器的其中之一判断控件为不启用或不可见时,即刻更新显示组件上所显示的控件的启用状态或可见状态并停止触发其余控件状态判断器。如此一来,可在遍历顺序中优先级较高的控件状态判断器判断不可启用或不可见时,即停止触发其余控件状态判断器,应而可节省电子装置的运算能力。
[0025]在本发明的一些实施例中,控件对应的至少一控件状态判断器可选自数个控件状态判断器。控件状态判断器中定义了在界面数据或程序状态满足一条件时,更新控件状态的逻辑。控件状态判断器按照类别可分为权限状态判断器、脚本状态判断器或其它类型的控件状态判断器。不同控件状态判断器的判断逻辑互相分离。其中,控件对应的数个控件状态判断器包含一权限状态判断器时,可将权限状态判断器设为遍历顺序中的最高优先级。也就是说,一旦权限状态判断器判断控件为不启用或不可见时,即刻更新显示组件上所显示的控件的启用状态或可见状态并停止触发其余控件状态判断器。
[0026]在本发明的一些实施例中,可在通过显示组件,提供应用界面的控件(步骤110)时,将控件对应的控件状态判断器加载电子装置的一内存。在有多个控件对应到相同的控件状态判断器时,可用电子装置的内存中所加载的同一控件状态判断器,负责多个控件的状态判断,而不是创建多份状态判断器,因而可节省加载所需的内存空间,避免多份相同状态判断器带来的运算能力浪费。
[0027]在本发明的一些实施例中,判断控件状态的方法100还可包含以下步骤:于应用界面创建控件。自数个控件状态判断器选择控件对应的控件状态判断器。将控件与其对应的控件状态判断器绑定。于是,在绑定后,即可继续执行步骤Iio至步骤150。
[0028]在本发明的另一些实施例中,判断控件状态的方法100还可包含以下步骤:在一配置中定义控件的结构。根据控件结构中的一控件对应的一脚本内容,自动创建一脚本类型的控件状态判断器,并将该控件状态判断器与至少一控件绑定,此一脚本内容即控件状态判断器的判断控件状态的逻辑。换言之,可将控件状态判断器对应的脚本内容,嵌入至控件结构中,作为控件状态判断器绑定的依据。其中,可使用可扩展标记语言(ExtensibleMarkup Language, XML)或其它结构化的程序语言,定义控件的控件结构。
[0029]在本发明的又一些实施例中,电子装置通过后台线程管理控件状态判断器,且电子装置通过主线程于显示组件,提供应用界面。如此一来,电子装置的使用者不会感受到显示组件上应用界面的操作有任何的迟缓,同时亦可使得控件状态改变更实时。
[0030]此外,控件状态判断器的判断逻辑独立于控件操作逻辑之外。如此一来,在控件状态判断器执行判断的同时,不会影响到控件的操作。
[0031]应用本发明具有下列优点。
[0032]使用状态判断器定义控件状态判断的逻辑,而不是分别在各个控件的操作逻辑中控制,使系统更易于维护和扩展。
[0033]一个控件可以对应多个控件状态判断器,一个状态判断装置也可应用于多个控件,每个装置的职责单一、逻辑互相分离,易于复用。
[0034]可以使用配置定义控件结构,使用脚本定义控件状态的判断逻辑,降低了开发门槛,提升了开发效率。
[0035]不仅可以使用脚本,对于复杂业务逻辑,可编写代码定义控件状态判断器,扩大了本装置的适用范围,提高了可扩展性和灵活性。
[0036]在运行时由后台线程统一管理控件状态判断器,不会造成界面响应迟缓,使用户操作体验更顺畅。
[0037]虽然本发明已以实施方式揭露如上,然其并非用以限定本发明,任何熟悉此技艺者,在不脱离本发明的精神和范围内,当可作各种的更动与润饰。举例来说,以上所述的平行或垂直可容许一定范围的误差,并不限于本说明书。因此,本发明的保护范围当视所附的权利要求书所界定的范围为准。
【权利要求】
1.一种判断控件状态的方法,其特征在于,包含: 通过一电子装置的一显示组件,提供一应用界面,其中该应用界面包含至少一控件,且该至少一控件对应至少一界面数据或程序状态; 持续监控该至少一界面数据或程序状态是否改变; 在监控到该至少一界面数据或程序状态有改变时,触发该至少一控件对应的至少一控件状态判断器,借此使该至少一控件状态判断器判断该至少一控件的状态;以及 根据该至少一控件状态判断器的一判断结果,更新该显示组件上所显示的该至少一状态。
2.根据权利要求1所述的判断控件状态的方法,其特征在于,触发该至少一控件对应的该至少一控件状态判断器的步骤包含: 在该至少一控件对应的该至少一控件状态判断器的数量为多个时,根据所述多个控件状态判断器的一遍历顺序,依序触发所述多个控件状态判断器进行判断;以及 在所述多个控件状态判断器的其中之一判断该至少一控件的该状态为一特定状态时,更新该显示组件上所显示的该至少一控件的状态并停止触发其余控件状态判断器。
3.根据权利要求2所述的判断控件状态的方法,其特征在于,该特定状态为不启用或不可见。
4.根据权利要求2所述的判断控件状态的方法,其特征在于,该遍历顺序指按照所述多个控件状态判断器的优先级从高到低。
5.根据权利要求1所述的判断控件状态的方法,其特征在于,该至少一控件状态判断器的判断逻辑独立于控件操作逻辑之外。
6.根据权利要求1所述的判断控件状态的方法,其特征在于,该至少一控件状态为控件的启用状态或可见状态。
7.根据权利要求1所述的判断控件状态的方法,其特征在于,还包含: 于该应用界面创建该至少一控件; 自多个控件状态判断器选择该至少一控件对应的该至少一控件状态判断器;以及 将该至少一控件与该至少一控件状态判断器绑定。
8.根据权利要求1所述的判断控件状态的方法,其特征在于,还包含: 在一配置中定义一控件结构; 根据该控件结构中的至少一控件对应的一脚本内容,自动创建一控件状态判断器;以及 将该一控件状态判断器与该至少一控件绑定。
9.根据权利要求1所述的判断控件状态的方法,其特征在于,该电子装置通过一后台线程管理该至少一控件状态判断器,且该电子装置通过主线程于该显示组件,提供该应用界面。
10.根据权利要求1所述的判断控件状态的方法,其特征在于,该至少一控件为一菜单项或一工具栏按钮。
【文档编号】G06F9/44GK103914288SQ201210593531
【公开日】2014年7月9日 申请日期:2012年12月31日 优先权日:2012年12月31日
【发明者】孙海林 申请人:鼎捷软件股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1