一种工具栏控制项位置信息储存与恢复的方法技术

技术编号:2830019 阅读:329 留言:0更新日期:2012-04-11 18:40
本发明专利技术涉及一种工具栏的控制项位置储存与恢复方法。一种工具栏控制项位置信息储存与恢复方法,该方法储存的位置信息为储存数组,该储存数组包含被修改或新增的控制项C、工具栏B、方向标志D、外邻控制项数组;该恢复过程如下:a.处理储存数组中的一项,并判断是否处理完毕,如果是进入过程h,否进入b;b.判断是否外邻控制项数组中的每项都不存在,如果是进入c,否进入d;c.返回a;d.在外邻控制项数组存在的控制项中选择一项,记为X;e.判断方向标志D是否为自前向后,是进入f,否进入g;f.在X所处工具栏上添加或移动控制项C到控制项X之后,返回过程a;g.在X所处工具栏上添加或移动控制项C到控制项X之前,返回a;h.结束。

【技术实现步骤摘要】

本专利技术涉及计算机数据恢复领域,尤其涉及一种工具栏的控制项 位置储存与恢复方法。
技术介绍
应用程序关闭时,把工具栏的用户自定义配置存入文件或注册表 等存储媒介中。再次启动时,应用程序从存储媒介中读取用户自定义 配置,根据这些信息把工具栏调整到上次的自定义状态。我们把这种 调整过程,称为工具栏的自定义状态恢复。这里所说的工具栏,包括 菜单栏、工具栏、子菜单、快捷菜单、弹出面板等。其特点是,工具 栏上包含一个或多个菜单项、按键、子菜单项或控件等项,在此,我 们把这些项统称为控制项。工具栏的自定义,允许调整控制项在工具栏上的位置,根据不同 用户的需要,允许用户把控制项从一个工具栏移到另一个工具栏,允 许在工具栏上增加新的控制项,允许复制控制项。 <自定义配置>中需 要保存这些控制项的位置变化,以便在<恢复>过程中把控制项摆放在 用户需要的正确位置。已有的储存与恢复方法为储存过程对每个工具栏,只储存被修改或新增的控制项,并为这些控制项 记录<位置编号>。即:储存结构1-A: (二维结构) <工具栏数组> :: <工具栏记录>* <工具栏记录> :: <工具栏B> <控制项位置数组><控制项位置数组>:: <控制项位置记录>*<控制项位置记录> :: <控制项C> <位置编号i> 或储存结构1-B:(—维结构)<控制项位置数组> :: <控制项位置记录>* <控制项位置记录&gt; :: <控制项C> <工具栏B> <位置编号i> 其中<位置编号1>指示c在工具栏存放的位置。该编号以首位置为o,自前向后依次增加。 注储存结构1-A、 l-B为〈自定义配置〉中的一部分, <自定义配置> 还可能储存有其他用户自定义信息。 恢复过程 对于储存结构l-A: 对 <工具栏数组> 中的每项 <工具栏记录> 执行②; ②按储存的顺序,对 <控制项位置数组> 中的每项 <控制项位 置记录> 执行j.在 <工具栏8>上,添加或移动 <控制项0到位置i。 对于储存结构l-B:①按储存的顺序,对 <控制项位置数组> 中的每项 <控制项位置记 录> 执行j.在〈工具栏B〉上,添加或移动 <控制项0到位置i。 上述储存于恢复方法的主要特点是,在储存过程中记忆用户自 定义的控制项位置编号i,在恢复过程中直接将该控制相恢复至i位 置,当应用程序升级或更换用户界面时,工具栏的内置布局将会发生 变更。如用户为操作方便,将控制项B (粗体)插入到原控制项I (斜体)前,假设该控制项B获得的位置编号i二3,当应用程序升级 或更换用户界面时,控制项I可能被移动到其他工具栏,也可能被移 动到工具栏中的其他位置,在恢复过程中控制项B仍然被恢复到位 置编号i=3的位置,这样控制项B和I就不会相邻了,从而破坏了用 户自定义控制项B位置的初衷。另外,工具栏的内置布局的变更, 将导致已有的储存与恢复方法出错。
技术实现思路
本专利技术目的在于克服现有技术中的不足,提供一种工具栏控制项 位置储存与恢复的方法,减少工具栏内置布局的变更对控制项位置恢 复的负面影响,提高控制项位置储存信息的鲁棒性。为了解决上述技术问题,通过以下技术方案实现 一种工具栏控 制项位置信息储存与恢复方法,其包括储存过程和恢复过程,恢复过 程利用储存过程储存的位置信息恢复工具栏控制项位置;所述位置信息为一储存数组,该储存数组包含被修改或新增的控制项C、工具栏B、方向标志D、外邻控制项数组;其中,方向标志D指示控制项C为自前向后安排位置,还是自后向前;若控制项是自 前向后安排位置,则该外邻控制项数组包含位于控制项C之前邻近 的一个或多个控制项;若控制项是自后向前安排位置,则外邻控制项 该数组包含位于控制项C之后邻近的一个或多个控制项;该恢复过程如下a. 处理储存数组中的一项,并判断是否处理完毕,如果是进入 过程h,否进入过程b;b. 判断是否外邻控制项数组中的每项都不存在,如果是进入过程C,否进入过程d;c. 返回过程a,d. 在外邻控制项数组存在的控制项中选择一项,记为X;e. 判断方向标志D是否为自前向后,是进入过程f,否进入 过程g;f. 在X所处工具栏上添加或移动控制项C到控制项X之后, 返回过程a;g. 在X所处工具栏上添加或移动控制项C到控制项X之前, 返回过程a;h. 结束。本专利技术还提供另一种工具栏控制项位置信息储存与恢复方法,其 包括储存过程和恢复过程,恢复过程利用储存过程储存的位置信息恢 复工具栏控制项位置;所述位置信息为一储存数组,该储存数组包含被修改或新增的控制项C、工具栏B、方向标志D、外邻控制项数组;其中,该储存数 组中每项方向标志D相同,即均为自前向后或均为自后向前,并且 可以隐含;若控制项C是自前向后安排位置,则该外邻控制项数组 包含位于控制项C之前邻近的一个或多个控制项;若控制项C是自 后向前安排位置,则该外邻控制项数组包含位于控制项c之后邻近的一个或多个控制项;该恢复过程如下a. 处理储存数组中的一项,并判断是否处理完毕,如果是进入 过程f,否进入过程b;b. 判断是否外邻控制项数组中的每项都不存在,如果是进入 过程c,否进入过程d;c. 返回过程a,d. 在外邻控制项数组存在的控制项中选择一项,记为X;e. 根据方向标志D,在X所处工具栏上添加或移动控制项C 到控制项X之前或之后,返回过程a;f. 结束。本专利技术与现有技术不同,储存信息中不依赖控制项的位置编号, 而是储存被修改或新增控制项与某一 (些)控制项的位置关系,这样 便保证了用户的初始自定义设置意愿不会因为工具栏内之布局变更 而破坏,提高控制项位置储存信息的鲁棒性。 附图说明图1是本专利技术第一实施例中恢复过程流程图; 图2是本专利技术第二实施例中恢复过程流程图。 具体实施例方式一种工具栏控制项位置信息储存与恢复方法,其包括储存过程和 恢复过程,恢复过程利用储存过程储存的位置信息恢复工具栏控制项 位置;所述位置信息为一储存数组,该储存数组包括被修改或新增的控制C、工具栏B、方向标志D、外邻控制项数组;其中,方向标志D指示控制项C为自前向后安排位置,还是自后向前;若控制项是自 前向后安排位置,则该外邻控制项数组包含位于控制项C之前邻近 的一个或多个控制项C()UT;若控制项是自后向前安排位置,则该外邻 控制项数组包含位于控制项C之后邻近的一个或多个控制项C。UT; 该恢复过程如下a. 处理储存数组中一项工具栏B,并判断是否处理完毕,如果是进入过程j,否进入过程b;b. 判断是否外邻控制项数组中的每项都不存在于该工具栏B, 如果是进入过程c,否进入过程e;c. 判断在工具栏B上是否存在控制项C,是进入过程j,否进入过程d;d. 在工具栏上添加控制项C,并返回过程a;e. 记录外邻控制项数组中存在于工具栏B中并与控制项C接近的控制项X;f. 判断方向标志D是否为自前向本文档来自技高网
...

【技术保护点】
一种工具栏控制项位置信息储存与恢复方法,其包括储存过程和恢复过程,恢复过程利用储存过程储存的位置信息恢复工具栏控制项位置,其特征在于:所述位置信息为一储存数组,该储存数组包含被修改或新增的控制项C、工具栏B、方向标志D、外邻控制项数 组;其中,方向标志D指示控制项C为自前向后安排位置,还是自后向前;若控制项C是自前向后安排位置,则该外邻控制项数组包含位于控制项C之前邻近的一个或多个控制项;若控制项C是自后向前安排位置,则该外邻控制项数组包含位于控制项C之后邻近的一个或多个控制项;该恢复过程如下:a.处理储存数组中的一项,并判断是否处理完毕,如果是进入过程h,否进入过程b;b.判断是否外邻控制项数组中的每项都不存在,如果是进入过程c,否进入过程d;c.返回过程a,d. 在外邻控制项数组存在的控制项中选择一项,记为X;e.判断方向标志D是否为自前向后,是进入过程f,否进入过程g;f.在X所处工具栏上添加或移动控制项C到控制项X之后,返回过程a;g.在X所处工具栏上添加或移动控制项C到 控制项X之前,返回过程a;h.结束。...

【技术特征摘要】
1、一种工具栏控制项位置信息储存与恢复方法,其包括储存过程和恢复过程,恢复过程利用储存过程储存的位置信息恢复工具栏控制项位置,其特征在于所述位置信息为一储存数组,该储存数组包含被修改或新增的控制项C、工具栏B、方向标志D、外邻控制项数组;其中,方向标志D指示控制项C为自前向后安排位置,还是自后向前;若控制项C是自前向后安排位置,则该外邻控制项数组包含位于控制项C之前邻近的一个或多个控制项;若控制项C是自后向前安排位置,则该外邻控制项数组包含位于控制项C之后邻近的一个或多个控制项;该恢复过程如下a.处理储存数组中的一项,并判断是否处理完毕,如果是进入过程h,否进入过程b;b.判断是否外邻控制项数组中的每项都不存在,如果是进入过程c,否进入过程d;c.返回过程a,d.在外邻控制项数组存在的控制项中选择一项,记为X;e.判断方向标志D是否为自前向后,是进入过程f,否进入过程g;f.在X所处工具栏上添加或移动控制项C到控制项X之后,返回过程a;g.在X所处工具栏上添加或移动控制项C到控制项X之前,返回过程a;h.结束。2、 根据权利要求1所述的工具栏控制项位置信息储存与恢复方法,过程C进一步包括判断在工具栏B上是否存在控制项C, 如果是直接返回过程a,否则在工具栏上添加控制项C,然后返 回过程a。3、 根据权利要求1所述的工具栏控制项位置信息储存与恢复方 法,其特征在于,所述储存数组的具体结构如下-<工具栏数组>包含任意多项的 <工具栏记录>; <工具栏记录>包含<工具栏8>和<控制项位置数组> 各一项; <控制项位置数组>包含任意多项的<控制项位置记录>; <控制项位置记录>包含<控制项O、 <方向标志D〉和 <外邻控制项数组> 各一项;<外邻控制项数组> 包含一项或多项的 <控制项<:0『>。4、 根据权利要求1所述的工具栏控制项位置信息储存与恢复方 法,其特征在于,所述储存数组的具体结构如下 <控制项位置数组>包含任意多项的<控制项位置记录>; <控制项位置记录>包含<控制项C>、 <工具栏B>、 <方向标志D>和 <外邻控制项数...

【专利技术属性】
技术研发人员:梁杰峰
申请(专利权)人:珠海金山软件股份有限公司
类型:发明
国别省市:44[中国|广东]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1
相关领域技术
  • 暂无相关专利