Extjs的Desktop弹出信息提示窗口的代码,在Windows系统桌面右下角弹出友情提示

void __fastcall TForm1::FormActivate(TObject *Sender)
{
//信息提示窗体,特点是适应了任务栏的所有情况
TRect k;
HWND handle=GetDesktopWindow();//得到桌面的handle
GetWindowRect(handle,&k);//得到桌面的大小

TRect rt;
SystemParametersInfo(SPI_GETWORKAREA, 0, &rt, 0);
int x=::GetSystemMetrics(SM_CXSCREEN)-rt.Width();//任务栏在右面的宽度
int y=::GetSystemMetrics(SM_CYSCREEN)-rt.Height();//任务栏在下面的高度
/*----------------------------------------
//C++Builder专家社区[url]www.3322ee.com[/url]原创文章
//转载请保留本版权信息,谢谢合作
----------------------------------------*/
//下面的两种显示效果①和②任选一个
//①直接显示在右下角:直接显示没有动画效果,可以放在窗体的Create事件也可以放在Activate事件里面
Left=k.Width()-Width-x;
    if(Left<0)Left=0;
Top=k.Height()-Height-y;
    if(Top<0)Top=0;

//②逐渐向上显示:要放在窗体的Activate事件里才能看到效果
Left=k.Width()-Width-x;
    if(Left<0)Left=0;
Top=k.Height();
    for(;;){
      //Application->ProcessMessages();//在长时间循环中响应消息
        if(Top==0)break;//结束整个循环
        if(Top<=k.Height()-Height-y)break;//结束整个循环
      Top-=2;//改变数值可以改变窗体出现的速度
      //Sleep(1);//延时,进一步调整窗体移动速度时使用
    }
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值