锐英源软件
第一信赖

精通

英语

开源

擅长

开发

培训

胸怀四海 

第一信赖

当前位置:锐英源 / 软件开发培训 / 学员作品 / 自动隐藏桌面侧边栏加跳绳效果
导航
源代码下载
服务方向
人工智能数据处理
人工智能培训
kaldi数据准备
小语种语音识别
语音识别标注
语音识别系统
语音识别转文字
kaldi开发技术服务
软件开发
运动控制卡上位机
机械加工软件
软件开发培训
Java 安卓移动开发
VC++
C#软件
汇编和破解
驱动开发
联系方式
固话:0371-63888850
手机:138-0381-0136
Q Q:396806883
微信:ryysoft

自动隐藏桌面侧边栏加跳绳效果

概述:

自动隐藏到桌面侧边栏的图形绘制软件。通过鼠标钩子使侧边栏显示或隐藏,类似QQ窗口的显示和隐藏效果。侧边栏里有视图,视图里图形绘制效果类似跳绳,跳绳上下位置状态在隐藏时能够自动保存,并在显示侧边栏时跳绳继续,继续时用的位置是保存过的位置。
开发时间:一天半;
代码:400行左右;
环境:VC++6.0,MS XP系统。

主要功能点的实现及技术难点解析:

窗口滑动效果:

移植AppBarMngr实现窗口的滑动效果。

跳绳上下跳动:

在本例中,跳绳的绘制是通过一个取巧的方法实现的,也就是通过在椭圆上覆盖矩形而只使其显示一半图形实现的,跳动的效果就是控制该覆盖矩形的上下覆盖位置而已,该功能可通过定时器来实现。

鼠标移出窗口区域,跳绳暂停跳动并记录下位置:

此功能为此例子的重点与难点所在,首先是要让它在鼠标滑出窗口区域时能让跳绳停止跳动,这比较简单,在AppBarMngr.cpp中找到显示窗口和隐藏窗口时发送的那两个消息的处理函数,并在发送WM_USER+2(窗口显示)时设置定时器,而在View类中来响应WM_TIMER消息,其中的OnTimer消息响应函数的功能就是判断何时该显示上弦椭圆,何时该显示下弦椭圆。在发送WM_USER+3(窗口隐藏)消息时杀死定时器,这时跳绳就会停止跳动。在OnTimer中定义一个状态变量来区分何时显示上下弦椭圆,并在不同状态下向OnDraw中的绘制代码传递不同的参数,而在杀死定时器的同时,该状态会记录此时跳绳跳动的位置信息,所以当窗口再次显示时即发送WM_USER+2消息时就会从该状态变量先前的状态继续执行,从而也就实现了对跳绳跳动状态的记录。

固定程序窗口界面的大小:

通过对WM_GETMINMAXINFO消息响应来实现。

使程序界面不可拖拽:

添加对WM_NCHITTEST消息的消息响应函数,并判断基类该消息响应函数的返回值的类型是否为HTCAOTION,也就是判断鼠标所在区域是否是标题区,若在,就将HTCLIENT作为函数的返回值返回;实现原理就是若鼠标在标题区就将标题栏作为客户区进行处理,因为客户区是不能进行拖拽的。

void CAppbardrawlineView::OnTimer(UINT nIDEvent)
{
// TODO: Add your message handler code here and/or call default
Invalidate();
if(showstate)
{
y1=200;
y2=350;
showstate=FALSE;
}
else
{
y1=350;
y2=500;
showstate=TRUE;
}

CView::OnTimer(nIDEvent);
}

友情链接
版权所有 Copyright(c)2004-2021 锐英源软件
公司注册号:410105000449586 豫ICP备08007559号 最佳分辨率 1024*768
地址:郑州大学北校区院(文化路97号院)内