在嵌入式网络话机上实现的非控件自动管理字符滚动方法及模块与流程

文档序号:20681447发布日期:2020-05-08 18:26阅读:336来源:国知局
在嵌入式网络话机上实现的非控件自动管理字符滚动方法及模块与流程

本发明属于通信技术领域,涉及嵌入式网络话机相关技术,尤其涉及一种在嵌入式网络话机上实现的非控件自动管理字符滚动方法及模块。



背景技术:

嵌入式网络话机受制于屏幕大小,常常需要将字符串进行移动才能在一个特定的小区域内显示出完整信息。然而很多嵌入式设备的显示系统并不完备,没有现成的字符滚动方法,或者因为硬件限制而无法使用完整的显示控件,这就导致很多嵌入式网络话机上信息显示不全。

此外,目前的字符滚动方法显示效果往往不尽如人意。常见的在嵌入式网络话机上进行字符滚动的方法是进行跳字符滚动,即字符串按字符一个一个地往前移动,这种方法虽然节省资源,但是滚动不连贯,在狭小的区域内的滚动会有反复跳动的问题,用户体验不好,而且滚动行为有限。



技术实现要素:

为解决上述问题,本发明公开了一种简单通用的字符滚动方法和模块,能够在目前的设备硬件环境上实现,适用于一般嵌入式网络话机的字符滚动需要。

为了达到上述目的,本发明提供如下技术方案:

在嵌入式网络话机上实现的非控件自动管理字符滚动模块,包括:滚动单元、执行单元、创建单元;

所述滚动单元通过数据管理链表串联,滚动单元包含需要滚动呈现的信息、行为控制信息、复用检查信息,所述行为控制信息包括滚动单元的相关滚动信息;

所述执行单元设置在嵌入式话机系统的定时器中,每当定时器到达时执行单元被唤醒并访问各滚动单元,提取滚动单元中的信息和存在于滚动单元中的行为控制信息进行滚动单元的滚动显示和行为控制;

所述创建单元用于创建滚动单元,首先检查是否存在可以复用的滚动单元,如存在可复用滚动单元则复用该单元,如不存在可复用单元则创建滚动单元,在滚动单元中保存必要信息。

进一步的,所述需要滚动呈现的信息包括要滚动的文字、背景。

进一步的,所述相关滚动信息包括以下信息中的至少一种:滚动速度、方向、状态、效果。

在嵌入式网络话机上实现的非控件自动管理字符滚动方法,包括如下步骤:

创建滚动单元,首先检查是否存在可以复用的滚动单元,如存在可复用滚动单元则复用该单元,如不存在可复用单元则创建滚动单元,在滚动单元中保存必要信息,用链表组织多个滚动单元;

定时访问滚动单元链表中的各个滚动单元,每次访问都对每个滚动单元进行更新、计算;

在嵌入式网络话机屏幕中基于滚动单元显示信息,文本移动时采用像素移动的方式绘制到临时内存中,然后将其中有效区域绘制到滚动单元所指示的区域中,形成滚动效果。

进一步的,所述有效区域在滚动单元中预先设置。

与现有技术相比,本发明具有如下优点和有益效果:

本发明提供的模块及方法不依赖于显示控件系统,为显示控件不健全的嵌入式网络话机的字符滚动提供了一套行之有效的处理方法,可以灵活地应用到一般的嵌入式网络话机设备上,节省设备资源,适用广泛,性能要求低。

附图说明

图1为非控件自动管理字符滚动模块架构图。

图2为嵌入式网络话机显示示意图。

具体实施方式

以下将结合具体实施例对本发明提供的技术方案进行详细说明,应理解下述具体实施方式仅用于说明本发明而不用于限制本发明的范围。另外,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。

本发明提供了一种在嵌入式网络话机上实现的非控件自动管理字符滚动模块,其结构包括滚动单元、执行单元、创建单元。

嵌入式网络话机能够提供显示屏幕的位置坐标信息,利用该信息及其他附加信息,能够在显示设备上与位置坐标信息相对应的确定区域上创建出一个特定的文字滚动区域。滚动单元即在该文字滚动区域中进行显示。滚动单元中包含的信息有:需要滚动呈现的信息(文字,背景等)、行为控制信息、复用检查信息等;而其中的复用检查信息是指由显示系统提供的坐标信息(即位置信息)、窗口句柄、其他状态信息(如绘制区域大小)等,保存这些信息可用于滚动单元的复用。复用检查信息仅仅是一种定义,不表示其只能够用于复用检查,实质上,其中的信息在复用检查时需要使用,在创建滚动单元或其他功能中也需要使用。由于滚动单元可以复用,当显示的文本发生变动而其他显示条件不变时,只需直接更改文本即可。多个滚动单元通过数据管理链表串联和管理。当需要在话机显示设备上显示某些文字信息时,创建一个滚动单元,保存必要信息。

行为控制信息包括滚动单元的相关滚动信息,如:滚动速度、方向、状态、效果或其他性质。速度和方向为参数控制。正数为向左方向,负数为向右方向(我们在文字滚动区域中定义一个原点,并绘制坐标,方向根据最后绘制时的坐标计算。本例中规定原点在区域左上角,向右为x正,向下为y正。此处的正负即为相对坐标轴而言,考虑实际文字绘制,取反方向为正),具体数值则为滚动速度,即为每次运行时前进多少距离(一般为像素)。状态控制为函数控制,根据使用场景,可自定义函数控制,运行时,会检查各滚动单元的状态(即行为控制信息),从而决定是否运行、暂停、重启、销毁、跳过等;其中销毁状态会使该滚动单元从数据管理链表中彻底销毁,并释放所占用资源,而具有其他状态的滚动单元可以被复用;跳过状态可和速度控制结合使用,以优化性能。只有处于运行状态的滚动单元才会发生真实绘制,因此滚动单元可以间隔若干时间才被设定为运行,即能达到速度控制、性能优化等效果。效果控制为函数控制,根据使用场景,可自定义函数控制,从而定义滚动效果,如由左向右,由右向左,从头滚到尾再开始,滚动到尾消失后再开始等。具体地说,如在水平从右向左滚动中,可将绘制时的位置像素偏移规定为使得所有文字都移出显示区域,并在下一个定时器事件中将文字的像素偏移起始置于文字头坐标,则可形成文字从头滚动到尾部消失,并在此从头开始显示的效果。其他性质的控制通常通过参数控制实现,如滚动次数、是否需要绘制,什么时候暂停,什么时候再次滚动等等。行为控制信息预先设定好,行为控制中可使用函数回调,因此可以动态控制。定时器访问时,根据当时具体情形,调用预先设置好的回调函数,根据回调函数的返回值(状态),来暂停,跳过,重新滚动等等。

执行单元设置在嵌入式话机系统的定时器中,每当定时器到达时便唤醒执行单元,执行单元将访问各滚动单元,提取滚动单元中的信息和存在于滚动单元中的行为控制信息进行滚动单元的滚动显示和行为控制,执行单元在执行时会根据滚动单元的行为控制信息进行行为更新和判定。文字滚动采用书写位置像素偏移的方法实现,即文本移动采用像素移动的方式绘制到临时内存中(如图2),然后将其中有效区域(即期望显示在界面上区域,在创建滚动单元时即根据位置大小信息设定好该区域)绘制到滚动单元所指示的区域中,形成滚动效果。

创建单元用于创建滚动单元,并检查是否存在可以复用的滚动单元,创建滚动单元时,先进行复用检查,以确认该特定滚动单元是否已经存在,若存在,则复用之。我们采用可唯一指定滚动单元的标识进行复用检查,检查的内容如窗口句柄,位置信息,大小信息等,如两次创建的这些信息相同,即可认为是准备创建的是同一个滚动单元。复用时可直接修改滚动单元中的相关内容,如文字景,从而实现复用。如无可复用的滚动单元的时候,新创建滚动单元,并设置需要滚动呈现的信息(文字,背景等)、行为控制信息、复用检查信息等必要信息。

基于上述模块架构,本发明还提供了在嵌入式网络话机上实现的非控件自动管理字符滚动方法,包括如下步骤:

创建滚动单元,首先检查是否存在可以复用的滚动单元,如存在可复用滚动单元则复用该单元,如不存在可复用单元则创建滚动单元,在滚动单元中保存必要信息,包括窗口信息、坐标信息、大小信息、及各种行为控制信息。并用链表组织多个滚动单元。

滚动单元会被定时访问并执行。组织滚动单元的链表结构入口在定时器中。在系统定时器中访问滚动单元链表中的各个滚动单元,每次访问都对每个滚动单元进行更新、计算。

在嵌入式网络话机屏幕中基于滚动单元显示信息,文本移动时采用像素移动的方式绘制到临时内存中(如图2),然后将其中有效区域绘制到滚动单元所指示的区域中,形成滚动效果。

本发明方案所公开的技术手段不仅限于上述实施方式所公开的技术手段,还包括由以上技术特征任意组合所组成的技术方案。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也视为本发明的保护范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1