基于透明窗体的按钮跟随鼠标波浪式浮动的实现方法技术

技术编号:8682343 阅读:191 留言:0更新日期:2013-05-09 02:28
本发明专利技术提供一种基于透明窗体的按钮跟随鼠标波浪式浮动的实现方法,包括:步骤10、通过创建内存模型,构建透明窗体;步骤20、通过Draw方法画图,生成按钮位图,将该按钮位图刷新到窗体,该按钮位图显示在窗体中;步骤30、当鼠标移至按钮位图上,计算并获得各按钮渐变轨迹,并将当前状态下各按钮画至缓冲位图;步骤40、将缓冲位图刷新至窗体,窗体中显示当前状态下渐变后的按钮,实现透明窗体中按钮跟随鼠标波浪式浮动。本发明专利技术通过重新创建内存模型,构建透明窗体,且窗体边缘无毛刺,工具条上各按钮可以是任意形状,然后通过缩放系数m=kxi+b,获得参与渐变的按钮在渐变后的尺寸大小,实现按钮渐变,且降低了CPU的占用率。

【技术实现步骤摘要】

本专利技术涉及应用软件的窗体,特别涉及。
技术介绍
随着计算机的迅速发展,相关的绘图软件也应运而生。为方便用户操作,大多数绘图软件都会向用户提供工具条,工具条上设有多个用于修改功能参数的按钮。这些工具条可在画布上随意拖动,但由于老式工具条都是不透明的,在操作过程中,且会遮挡用户查看工具条后方画布上的内容,用户只能通过频繁拖动工具条,才能看清画布,因此使用过程很不方便。现在市场上还出现了一些可以使软件的窗体以任意形状显示的技术,但是这些窗体都存在着窗体边缘毛刺,窗体中工具条上的各按钮无法以任意形状显示的问题,且存在CPU占用率高等缺点。所述软件的窗体是指任意一种软件打开使用后,除可编辑的界面或画布以及工具条之外的框体,例如:画图软件打开后,包括:中间部分的画布、工具条以及环绕四周的框体。
技术实现思路
本专利技术要解决的技术问题,在于提供一种,其实现保留软件编辑区可见但窗体透明的友好界面,且使窗体内各工具条上的按钮跟随鼠标波浪式浮动,窗体边缘无毛刺,工具条上的按钮可以是任意形状,CPU占用率低。本专利技术是这样实现的:,包括如下步骤:步骤10、通过创建内存模型,构建透明窗体;步骤20、通本文档来自技高网...

【技术保护点】
基于透明窗体的按钮跟随鼠标波浪式浮动的实现方法,其特征在于:包括如下步骤:步骤10、通过创建内存模型,构建透明窗体;步骤20、通过Draw方法画图,生成按钮位图,将该按钮位图刷新到窗体,该按钮位图显示在窗体中;该按钮位图上画有复数个按钮,各按钮大小为初始化状态下大小,即各按钮大小未发生改变;用户根据需要自定义各按钮的大小形状;步骤30、当鼠标移至按钮位图上,计算并获得各按钮渐变轨迹,并将当前状态下各按钮画至缓冲位图;所述当前状态是指鼠标移至按钮位图上的状态;步骤40、将缓冲位图刷新至窗体,窗体中显示当前状态下渐变后的按钮,实现透明窗体中按钮跟随鼠标波浪式浮动。

【技术特征摘要】
1.关于透明窗体的按钮跟随鼠标波浪式浮动的实现方法,其特征在于:包括如下步骤: 步骤10、通过创建内存模型,构建透明窗体; 步骤20、通过Draw方法画图,生成按钮位图,将该按钮位图刷新到窗体,该按钮位图显示在窗体中;该按钮位图上画有复数个按钮,各按钮大小为初始化状态下大小,即各按钮大小未发生改变;用户根据需要自定义各按钮的大小形状; 步骤30、当鼠标移至按钮位图上,计算并获得各按钮渐变轨迹,并将当前状态下各按钮画至缓冲位图;所述当前状态是指鼠标移至按钮位图上的状态; 步骤40、将缓冲位图刷新至窗体,窗体中显示当前状态下渐变后的按钮,实现透明窗体中按钮跟随鼠标波浪式浮动。2.根据权利要求1所述的基于透明窗体的按钮跟随鼠标波浪式浮动的实现方法,其特征在于:所述步骤10具体为: 步骤U、设置窗体风格:重载CreateParams方法,设置窗口风格为无标题、置顶、带边框的弹出窗口; 步骤12、设置内存模型: 首先,创建第一设备上下文,该第一设备上下文与显示器关联,存储显示器的基本信息,所述基本信息包括:显示器的宽、高、分辨率;当Windows系统得到第一设备上下文时,将根据第一设备上下文存储的显示器基本信息刷新屏幕; 其次,创建由窗体画布定 义的第二设备上下文,该第二设备上下文保存绘制的工具条。然后,设置内存参数: 创建一 BLENDFUNCTION类型变量,所述BLENDFUNCTION类型为结构体,该结构体包含有混合处理指令BlendOp、混合标志BlendFlags、混合方式AlphaFormat、源位图透明度SourceConstantAlpha四个子参数,该四个自参数的值分别设置为AC_SRC_0VER,0,I和255 ;通过所述结构体将第一设备上下文和第二设备上下文按照所述子参数进行色彩混合处理,从而得到具有透明效果的图片; 步骤13、使用Windows API的函数UpdateLayeredWindow将所述图片刷新至屏幕,从而构建出透明窗体。3.根据权利要求1所述的基于透明...

【专利技术属性】
技术研发人员:丁万年贺小阳陈日良
申请(专利权)人:锐达互动科技股份有限公司
类型:发明
国别省市:

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

1