软件工程综合实践专题第一次作业

软件工程综合实践专题第一次作业

从网上找的一个小程序,用来实现窗口抖动(类似QQ的窗口抖动),下面是代码及解释:
#include <stdio.h>

#include <windows.h>

int main(int argc, char *argv[])

{

RECT rect; //RECT是一个矩形结构体,相当于保存了一个矩形的四条边的坐标

HWND hwnd = NULL,oldhwnd = NULL; //两个窗口句柄

int x,y,width,height; //用来保存窗口横纵坐标和宽度、高度的变量

int i;

for(i=0;i<50;i++)

{

hwnd = GetForegroundWindow(); //一个API函数,获取活动窗口的句柄

if(hwnd!=oldhwnd)

{

GetWindowRect(hwnd,&rect); //获取指定窗口的位置

x = rect.left;

y = rect.top;

width = rect.right - x;

height = rect.bottom - y;

oldhwnd = hwnd; //把刚刚获取的窗口句柄保存起来。

}

MoveWindow(hwnd,x-10,y,width,height,TRUE); //向左移动了10像素,下同

Sleep(5); //暂停5毫秒

MoveWindow(hwnd,x-10,y-10,width,height,TRUE);

Sleep(5);

MoveWindow(hwnd,x,y-10,width,height,TRUE);

Sleep(5);

MoveWindow(hwnd,x,y,width,height,TRUE);

Sleep(5);

}

return 0;

}

主要就是调用了windows中的几个API,包括获取句柄,移动位置等。窗口的抖动其实就是让一个窗口在几个位置停顿一小下然后来回切换,就会形成抖动效果!不过加上声音效果可能会更好,不然可能注意不到窗口抖动了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值