CN100367198C - 一种实现消息提示的方法和装置 - Google Patents
一种实现消息提示的方法和装置 Download PDFInfo
- Publication number
- CN100367198C CN100367198C CNB2004100517692A CN200410051769A CN100367198C CN 100367198 C CN100367198 C CN 100367198C CN B2004100517692 A CNB2004100517692 A CN B2004100517692A CN 200410051769 A CN200410051769 A CN 200410051769A CN 100367198 C CN100367198 C CN 100367198C
- Authority
- CN
- China
- Prior art keywords
- color data
- data
- icon
- color
- message notifying
- 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.)
- Active
Links
Images
Landscapes
- User Interface Of Digital Computer (AREA)
Abstract
本发明公开了一种实现消息提示的方法,包括步骤:解析原始消息提示图标的数据结构,获取该消息提示图标的原始颜色数据;接收颜色数据的目标值,根据所述目标值,将图标的原始颜色数据转换成新的颜色数据;在定时器控制下,交替采用所述原始颜色数据和存储的新的颜色数据生成消息提示图标,实现消息提示图标的闪烁,进行消息提示。相应地,本发明还公开了一种实现消息提示的装置。
Description
技术领域
本发明涉及计算机图像数据处理技术,特别是涉及一种实现消息提示的方法和装置。
背景技术
图标是计算机等各种数据处理***应用的一个基本元素,为了呈现特殊的显示效果,经常需要实现图标的闪动或闪烁。例如,在有些应用程序中,需要通过图标闪动的方式来进行消息提示。
随着社会及科技的发展,人们越来越重视信息交流和沟通的及时性,因此,可以使得人们相互之间的联络和沟通日益方便的即时通讯***逐渐被用户所认可和接受。作为通过互联网即时和他人联系的一种方式,即时通讯***具有互动性强、价格便宜等特点。采用QQ、MSN、雅虎通等工具的即时通讯***因此能够在不长的时间得到普及。
在即时通讯客户端,通常采用图标(ICON)闪动的方式来进行消息的提示。目前,在即时通讯客户端上,一种实现图标闪动的现有技术是通过ICON的位置的不断改变来进行的。具体是:对于ICON设置多个不同的坐标数据,当消息到达客户端时,启动一个定时器,使得ICON根据预设的时间间隔在前述坐标数据对应的临近位置来回移动,达到吸引用户,提醒用户注意的目的。
该方法实现起来比较简单,但是由于形式单一,未免使得用户在感受消息提示的时候觉得枯燥。这对于一个用户体验感要求很高的软件产品来说是一个较大的缺陷,所以改善这一用户体验,采用新的提示方式是比较重要的一个课题。
另一种实现消息提示的现有技术是通过gif来进行的,可以达到一种特殊的效果,但是制作gif将会加重用户界面设计人员的负担;同时如果对于每一个需要实现闪动的ICON都需要一个gif来加以支持,则程序的开销将会比较大;另一方面对gif的支持还需要大量的程序来实现。
发明内容
本发明解决的技术问题在于提供一种实现消息提示的方法和装置,可以通过丰富多变的图标闪动方式来吸引用户注意,且***的资源开销较小;并且可以改善用户的体验感。
为此,本发明解决技术问题的技术方案是:提供一种实现消息提示的方法,包括步骤:
1)解析原始消息提示图标的数据结构,获取该消息提示图标的原始颜色数据;
2)接收颜色数据的目标值,根据所述目标值,将图标的原始颜色数据转换成新的颜色数据;
3)在定时器控制下,交替采用所述原始颜色数据和如2)所述新的颜色数据生成消息提示图标,实现消息提示图标的闪烁,进行消息提示。
优选地,所述步骤1)中的获取颜色数据具体包括:提取出图标的位图句柄,其中包括颜色位图和蒙板位图;获取所述颜色位图和蒙板位图的数据区;遍历像素提取颜色数据和蒙板数据。
优选地,所述步骤1)中还包括对颜色数据和蒙板数据进行按位异或,得到实际的颜色数据。
优选地,所述步骤2)中的转换颜色数据具体包括:开辟新的数据空间,将新的数据空间里的颜色的RGB值转化到HIS模式后得到该颜色的HIS值,判断是否是需要修改的颜色数据,如果是,则转换为新的颜色数据,最后再将新的颜色数据转换为RGB值;如果否,则直接将颜色数据转化为RGB值。
优选地,所述转换为新的颜色数据具体是采用目标值替换颜色数据中的亮度值或色彩值。
优选地,在所述步骤2)之后还包括存储所述新的颜色数据。
优选地,所述存储过程具体包括:将新的颜色数据与蒙板数据相结合生成颜色数据进行保存。
优选地,所述相结合具体指对新的颜色数据和蒙板数据进行异或运算。
优选地,所述消息提示图标是即时通讯***中即时通讯客户端采用的图标。
本发明还提供一种实现消息提示的装置,包括:
颜色数据获取单元,用于获取原始消息提示图标的原始颜色数据;
颜色数据转换单元,用于获取目标值,并且根据所述目标值对原始颜色数据进行转换,得到新的颜色数据;
数据存储单元,用于保存该新的颜色数据;
图标生成单元,交替采用原始颜色数据和新的颜色数据生成消息提示图标;
定时器,用于控制上述交替的时间间隔,从而实现消息提示图标的闪动。
优选地,位图句柄获取单元,用于提取出图标的位图句柄,其中包括颜色位图和蒙板位图;位图数据区获取单元,用于获取所述颜色位图和蒙板位图的数据区;颜色值生成单元,用于遍历像素提取颜色数据和蒙板数据,对颜色数据和蒙板数据进行按位异或,得到实际的颜色数据。
优选地,该颜色数据转换单元包括接口、模式转换单元和颜色值替换单元;所述接口用于接收原始颜色数据和目标值;所述模式转换单元用于实现颜色数据的RGB模式和HIS模式之间的转换;所述颜色值替换单元用于利用目标值替换原始颜色数据中的亮度值或色彩值。
相对于现有技术,本发明的有益效果是:由于本发明通过获取图标的颜色数据,根据目标值对颜色数据进行修改,并根据修改后的颜色数据生成新的消息提示图标,从而在定时器的控制下,实现图标的闪烁效果,使得图标的变化相对现有技术更为丰富;并且相对于制作gif来说,资源开销较少。
此外,本发明除了可以改变图标的亮度,还可以修改图标的颜色等参数来实现闪烁的效果。
另外,由于该本发明针对的对象是Wndows界面的基本元素,所以具有较好的运用前景,可以使用于即时通讯***或者其他Windows软件产品。
附图说明
图1是本发明实现消息提示的方法的流程图;
图2是本发明方法中修改消息提示图标的流程图;
图3是本发明方法中转换颜色数据的流程图;
图4是本发明实现消息提示的装置的框图。
具体实施方式
为了改善用户在消息提示时的体验,本发明主要的构思在于采用图像变色的方案实现ICON的变色。其具体实现是在保留ICON色彩的前提下不断调整ICON的明暗度,达到ICON的闪烁效果,由于ICON是一个Windows程序中基本的界面元素,所以实现了ICON的明暗闪烁方案后,用户的界面体验将会得到很大的改善,这一技术的应用不仅会较大地改善即时通讯客户端的界面体验,而且这种技术也能够容易的移植到别的应用程序中,同样能产生很好的效果。
ICON是Windows程序界面上的基本元素之一。对于ICON,Windows提供了比较丰富的API对ICON进行操作。基本的一个API是GETICONINFO,通过两个bitmap(颜色位图和蒙板位图)来表现ICON。
此外,通过GetBitmapPixels可以得到bitmap的图像数据,得到图像的像素数据后,可以结合数字图像处理技术修改这一数据区以得到不同的效果。
尽管对bitmap的操作并不能直接改变原有的ICON的特性.但是却可以通过CreateIconIndirect利用修改后的数据区生成新的ICON来替换旧的ICON,最终完成ICON的形式的改变,实现特殊的显示效果。
其中,所述的数字图像处理技术可以采用皮肤变色的方法,即通过像素的颜色模式转化来实现颜色特征的提取,通过修改这些特征达到改变颜色的目的,无论是改变ICON的亮度还是色彩都可以通过这一方法加以实现。当然,还可以采用其他的数字图像处理技术,如图像翻转、旋转等方法。
请参阅图1,是本发明实现消息提示的方法主要的流程图。
首先,解析原始消息提示图标的数据结构,获取该消息提示图标的原始颜色数据;其次,接收目标值,根据所述图标的原始颜色数据和目标值,生成新的颜色数据;随后,存储所述新的颜色数据;当有新的消息到达客户端时,启动定时器,交替采用所述原始颜色数据和存储的新的颜色数据生成消息提示图标,实现消息提示图标的闪动,进行消息提示。
请参阅图2,是本发明一个实施例的流程图。
首先,需要解析ICON的数据结构,得到ICON的颜色数据,判断ICON的类型。
本实施例中,步骤S110是采用Window的自带API之一GETICONINFO提取出ICON的位图句柄(HBITMAP),其中包括颜色位图(hbmpcolor)和蒙板位图(hbmpmask),并且如果ICON实现透明将会有一个非空的蒙板位图。
再执行步骤S120,通过GetBitmapPixels得到这两个位图的数据区,需要判断位图的数据格式。
ICON的颜色数据在Windows程序中一般是以16位位图形式保存的,而16位位图中的颜色数据的安排有两种形式X555和565,所以首先应该根据bitmapinfo中的bitcount得到是那一种模式,如果bitcount是15则为X555,如果是16则为565。
ICON的蒙板数据并不是16位的,一般用一个字节位对应一个像素,所以一个16*16的ICON的蒙板数据只有32字节。
其次,对ICON的图像数据进行处理,包括颜色数据和蒙板数据,根据位图的数据格式遍历位图像素数据,改变像素数据的亮度。需要说明的是,如果该像素属于ICON透明区域,则不做处理;如果该像素不在透明区域则结合蒙板对应位置的数据计算出实际的颜色值。
本实施例中,首先执行步骤S130,得到第一帧亮度值。
然后执行步骤S140和步骤S150,遍历像素提取第一个颜色数据和蒙板数据。根据位图的不同类型提取出像素的RGB值,24位图RGB提取比较简单;对于16位图来说比较复杂,首先取出对应位置的蒙板像素值(一般是一个字节位,所以需要将这个字节位扩充到16位),然后根据bitcount判断16位图是X555格式的还是565格式的,然后进行位操作将其分别提取出来。
步骤S160,颜色数据和蒙板数据的结合才能得到实际的颜色数据,本实施例是采用按位进行异或操作得到颜色值的。
步骤S170,对得到的颜色值进行处理,对数据进行变换得到新的颜色数据。
请参阅图3,是本实施例中修改颜色值的流程图。首先,开辟新的数据空间,将新的数据空间里的颜色的RGB值转化到HIS模式后得到该颜色的HIS值,判断是否是需要修改的颜色数据,如果是,则修改I值(即亮度值),最后再将新的颜色数据转换为RGB值;如果否,则直接将颜色数据重新转化为RGB值。
步骤S180,将得到的新颜色数据再次与蒙板数据相结合进行运算,再写入到bitmap中的颜色数据。本实施例中,在得到新的颜色数据后,对数据进行一次异或操作才写入到bitmap中,以保证显示结果的正确性。
步骤S190,判断遍历是否结束,如果否,则取得下一个像素颜色,并返回步骤S150;如果是,则执行步骤S210,将数据保存于对应帧的数据区。
随后,进行步骤S220,将得到的新的ICON颜色数据结合蒙板数据建立新的ICON替换旧的ICON。
本发明中,为了便于提高更换ICON颜色时的效率,可以预先建立多个ICON内存区,保存多帧ICON在不同亮度值下的bitmap数据,这样在每次的ICON替换时可以避免颜色值的运算,直接根据内存区中的数据进行ICON的建立,提高显示效率。当然,所述颜色数据还可以存储于缓存、硬盘、闪存等各种存储介质中,此不赘述。
接着执行步骤S230,判断帧编历是否完毕,如果是,则退出程序;如果否,则取得下一颜色数据区的指针,并返回步骤S140。
本发明的实施例中,采用一个定时器来用于激发和控制ICON的颜色闪动。在定时器的控制下,交替采用所述原始颜色数据和存储的新的颜色数据生成消息提示图标,从而实现消息提示图标的闪动,进行消息提示。
本发明的一个实施例是应用于即时通讯***的客户端实现消息提示。当然,本发明还可以应用于其他具有图标元素的软件产品,此不赘述。
请参阅图4,本发明还提供一种实现消息提示的装置。
该装置100包括颜色数据获取单元110、颜色数据转换单元120、数据存储单元130、图标生成单元140和定时器150。
所述颜色数据获取单元110用于获取原始消息提示图标的原始颜色数据;所述颜色数据转换单元120用于获取目标值,并且根据所述目标值对原始颜色数据进行转换,得到新的颜色数据;所述数据存储单元130用于保存该新的颜色数据;所述图标生成单元140用于根据前述新的颜色数据生成新的消息提示图标;所述定时器150用于控制图标生成单元140生成消息提示图标的时间间隔,从而实现消息提示图标的闪动,以提醒用户注意。
该颜色数据获取单元110包括位图句柄获取单元111、位图数据区获取单元112、颜色值生成单元113。所述位图句柄通常包括颜色位图和蒙板位图,并且如果图标实现透明将会有一个非空的蒙板位图。所述颜色值生成单元113主要用于根据颜色数据和位图数据生成实际的颜色数据。
该颜色数据转换单元120包括接口121、模式转换单元122、颜色值替换单元123;所述接口121用于接收原始颜色数据和目标值;所述模式转换单元122用于实现颜色数据的RGB模式和HIS模式之间的转换;所述颜色值替换单元用于利用目标值替换原始颜色数据中的参数。
综上所述,本发明的实现主要是通过修改图标的颜色数据得到的,所以并不仅仅限于实施例所述的改变图标的亮度,还可以通过改变图标的色彩等实现图标闪动,使得图标的变化可以更加的丰富。
本发明的一个实施例中,所述装置设置在即时通讯***的客户端中,该即时通讯客户端可以采用QQ或其它类似的即时通讯工具。
可以理解的是,本发明的应用不仅会较大地改善即时通讯客户端的界面体验,而且这种技术也能够容易的移植到别的应用程序中,同样能产生很好的效果。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以作出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (12)
1.一种实现消息提示的方法,其特征在于,包括步骤:
1)解析原始消息提示图标的数据结构,获取该消息提示图标的原始颜色数据;
2)接收颜色数据的目标值,根据所述目标值,将图标的原始颜色数据转换成新的颜色数据;
3)在定时器控制下,交替采用所述原始颜色数据和如2)所述的新的颜色数据生成消息提示图标,实现消息提示图标的闪烁,进行消息提示。
2.根据权利要求1所述的实现消息提示的方法,其特征在于,所述步骤1)中的获取颜色数据具体包括:提取出图标的位图句柄,其中包括颜色位图和蒙板位图;获取所述颜色位图和蒙板位图的数据区;遍历像素提取颜色数据和蒙板数据。
3.根据权利要求2所述的实现消息提示的方法,其特征在于:所述步骤1)中还包括对颜色数据和蒙板数据进行按位异或,得到实际的颜色数据。
4.根据权利要求1所述的实现消息提示的方法,其特征在于,所述步骤2)中的转换颜色数据具体包括:开辟新的数据空间,将新的数据空间里的颜色的RGB值转化到HIS模式后得到该颜色的HIS值,判断是否是需要修改的颜色数据,如果是,则转换为新的颜色数据,最后再将新的颜色数据转换为RGB值;如果否,则直接将颜色数据转化为RGB值。
5.根据权利要求4所述的实现消息提示的方法,其特征在于:所述转换为新的颜色数据具体是采用目标值替换颜色数据中的亮度值或色彩值。
6.根据权利要求2所述的实现消息提示的方法,其特征在于:在所述步骤2)之后还包括存储所述新的颜色数据。
7.根据权利要求6所述的实现消息提示的方法,其特征在于:所述存储过程具体包括:将新的颜色数据与蒙板数据相结合生成颜色数据进行保存。
8.根据权利要求7所述的实现消息提示的方法,其特征在于:所述相结合具体指对新的颜色数据和蒙板数据进行异或运算。
9.根据权利要求1至8任一项所述的实现消息提示的方法,其特征在于:所述消息提示图标是即时通讯***中即时通讯客户端采用的图标。
10.一种实现消息提示的装置,其特征在于,包括:
颜色数据获取单元,用于获取原始消息提示图标的原始颜色数据;
颜色数据转换单元,用于获取目标值,并且根据所述目标值对原始颜色数据进行转换,得到新的颜色数据;
数据存储单元,用于保存该新的颜色数据;
图标生成单元,交替采用原始颜色数据和新的颜色数据生成消息提示图标;
定时器,用于控制上述交替的时间间隔,从而实现消息提示图标的闪动。
11.根据权利要求10所述的实现消息提示的装置,其特征在于:该颜色数据获取单元包括:
位图句柄获取单元,用于提取出图标的位图句柄,其中包括颜色位图和蒙板位图;
位图数据区获取单元,用于获取所述颜色位图和蒙板位图的数据区;
颜色值生成单元,用于遍历像素提取颜色数据和蒙板数据,对颜色数据和蒙板数据进行按位异或,得到实际的颜色数据。
12.根据权利要求10或11所述的实现消息提示的装置,其特征在于:该颜色数据转换单元包括接口、模式转换单元和颜色值替换单元;所述接口用于接收原始颜色数据和目标值;所述模式转换单元用于实现颜色数据的RGB模式和HIS模式之间的转换;所述颜色值替换单元用于利用目标值替换原始颜色数据HIS模式中的参数。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB2004100517692A CN100367198C (zh) | 2004-09-30 | 2004-09-30 | 一种实现消息提示的方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB2004100517692A CN100367198C (zh) | 2004-09-30 | 2004-09-30 | 一种实现消息提示的方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1755612A CN1755612A (zh) | 2006-04-05 |
CN100367198C true CN100367198C (zh) | 2008-02-06 |
Family
ID=36688889
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB2004100517692A Active CN100367198C (zh) | 2004-09-30 | 2004-09-30 | 一种实现消息提示的方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN100367198C (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101330755A (zh) * | 2007-06-22 | 2008-12-24 | 鸿富锦精密工业(深圳)有限公司 | 无线通信装置及方法 |
CN102447689B (zh) * | 2010-09-30 | 2015-05-20 | 腾讯科技(深圳)有限公司 | 一种消息的更新提示方法以及网络客户端 |
CN102736920B (zh) * | 2012-06-11 | 2015-09-09 | 广东欧珀移动通信有限公司 | 一种桌面图标背景蒙板的自适应配色方法 |
CN103001852B (zh) * | 2012-08-29 | 2015-10-07 | 五八同城信息技术有限公司 | 一种基于即时通信的***托盘处理方法和装置 |
CN103324471B (zh) * | 2012-10-22 | 2018-05-15 | 中兴通讯股份有限公司 | 动态修改应用启动图标的方法、消息的发送方法、终端 |
CN103106004A (zh) * | 2013-02-06 | 2013-05-15 | 广东欧珀移动通信有限公司 | 基于移动终端的应用程序待处理事件的提醒方法和装置 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1044544A (zh) * | 1989-01-13 | 1990-08-08 | 米德公司 | 彩色图象处理方法 |
CN1391678A (zh) * | 1999-09-24 | 2003-01-15 | 折扣网控股有限公司 | 用于观看在线广告的交互式***和方法 |
CN1444158A (zh) * | 2002-03-13 | 2003-09-24 | 三星电子株式会社 | 有效存储颜色色域的彩色信号处理装置及其方法 |
-
2004
- 2004-09-30 CN CNB2004100517692A patent/CN100367198C/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1044544A (zh) * | 1989-01-13 | 1990-08-08 | 米德公司 | 彩色图象处理方法 |
CN1391678A (zh) * | 1999-09-24 | 2003-01-15 | 折扣网控股有限公司 | 用于观看在线广告的交互式***和方法 |
CN1444158A (zh) * | 2002-03-13 | 2003-09-24 | 三星电子株式会社 | 有效存储颜色色域的彩色信号处理装置及其方法 |
Also Published As
Publication number | Publication date |
---|---|
CN1755612A (zh) | 2006-04-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104216752B (zh) | 一种基于窗口的信息加载方法及装置 | |
CN100444163C (zh) | 一种网页显示页面的配置方法 | |
CN102455857B (zh) | 一种移动终端浏览器中的快速链接实现方法和*** | |
CN108038094A (zh) | 一种文档批注方法、装置和电子设备 | |
CN103123581B (zh) | 一种移动终端的应用界面更换方法和装置、及移动终端 | |
CN106775543A (zh) | 一种终端显示控制方法以及装置 | |
CN108228677A (zh) | 切换网站主题风格的方法和装置 | |
CN102768625B (zh) | Windows用户界面的换肤方法和装置 | |
CN105138317A (zh) | 用于终端设备的窗口显示处理方法及装置 | |
CN110533755A (zh) | 一种场景渲染的方法以及相关装置 | |
CN102419955B (zh) | Oled的显示控制方法及设备、终端设备 | |
CN100367198C (zh) | 一种实现消息提示的方法和装置 | |
CN103105994A (zh) | 移动终端和移动终端页面的返回方法 | |
CN108762597A (zh) | 电子书阅读器手写笔迹的绘制方法及电子书阅读器 | |
CN106855798A (zh) | 一种界面元素属性值的设置方法、装置及智能设备 | |
CN105975324A (zh) | 一种记忆人机界面操作习惯的方法 | |
CN111710020A (zh) | 动画渲染方法和装置及存储介质 | |
US20100199201A1 (en) | System and method for displaying a display panel | |
CN111784817A (zh) | 阴影的展示方法和装置、存储介质、电子装置 | |
CN113778304B (zh) | 显示图层的方法、装置、电子设备及计算机可读存储介质 | |
CN110879739A (zh) | 通知栏的显示方法及其显示装置 | |
CN102446097B (zh) | 一种更换用户界面的皮肤的方法 | |
US20020196266A1 (en) | Progressively rolling animation display method on cellular phones | |
CN109074220A (zh) | 动态改变用户界面元素的方法 | |
CN109739496A (zh) | 一种应用程序的调用页面的显示方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |