如何实现象QQ那般隐藏的窗体

转载 2006年06月09日 23:46:00

private void Form1_Load(object sender, System.EventArgs e)
  {
   System.Windows.Forms.Timer StopRectTimer = new System.Windows.Forms.Timer();
   StopRectTimer.Tick +=new EventHandler(StopRectTimer_Tick);
   StopRectTimer.Interval = 100;
   StopRectTimer.Enabled = true;

  }
  
  private void StopRectTimer_Tick(object sender, EventArgs e)
  {
   if(this.Bounds.Contains(Cursor.Position))
   {
    switch(this.StopAanhor)
    {
     case AnchorStyles.Top:
      this.Location = new Point(this.Location.X,0);
      break;
     case AnchorStyles.Left:
      this.Location = new Point(0,this.Location.Y);
      break;
     case AnchorStyles.Right:
      this.Location = new Point(Screen.PrimaryScreen.Bounds.Width - this.Width,this.Location.Y);
      break;
    }
   }
   else
   {
    switch(this.StopAanhor)
    {
     case AnchorStyles.Top:
      this.Location = new Point(this.Location.X,(this.Height-2)*(-1));
      break;
     case AnchorStyles.Left:
      this.Location = new Point((-1)*(this.Width-2),this.Location.Y);
      break;
     case AnchorStyles.Right:
      this.Location = new Point(Screen.PrimaryScreen.Bounds.Width-2,this.Location.Y);
      break;
    }
   }
  }
  internal AnchorStyles StopAanhor = AnchorStyles.None;
  private void mStopAnhor()
  {
   if(this.Top<=0)
   {
    StopAanhor = AnchorStyles.Top;
   }
   else if(this.Left<=0 )
   {
    StopAanhor = AnchorStyles.Left;

   }
   else if(this.Left>=Screen.PrimaryScreen.Bounds.Width-this.Width)
   {
    StopAanhor = AnchorStyles.Right;
   }
   else
   {
    StopAanhor = AnchorStyles.None;
   }
  }

  private void Form1_LocationChanged(object sender, System.EventArgs e)
  {
   this.mStopAnhor();
  }

Qt实现窗体在显示屏旁边自动隐藏(类似QQ)

Qt实现窗体在显示屏旁边自动隐藏(类似QQ)看群里有人问这个东西,本人先来无事编以自己的想法实现了下: 其实实现的点子很简单:void AutoHideWidget::leaveEvent(QEve...
  • q862343646
  • q862343646
  • 2016年12月09日 10:45
  • 1316

C# 实现类似QQ的窗体在桌面边缘停靠和隐藏

设计思路: 1.使用定时器(Timer)来监控鼠标位置和窗体位置,并实现窗体的停靠和隐藏 2.当鼠标拖动窗体时,窗体才有可能根据自身位置决定是否停靠 3.如果窗体四周没有接触到屏幕边缘则不会停靠 4....
  • dufangfeilong
  • dufangfeilong
  • 2014年12月05日 17:23
  • 1653

qt实现的窗口吸附屏幕边缘,动画隐藏显示的效果,类似于qq主窗口 吸附 隐藏的效果

对于这个效果的实现,其实方法
  • chaney_f
  • chaney_f
  • 2014年09月22日 16:04
  • 2714

C#实现类似QQ的隐藏浮动窗体、消息闪动

功能简介   当语音客服系统登录成功进入主界面时,本聊天工具将会自动隐藏在左下角位置,当鼠标移动到左下角时,自动弹出,当鼠标移开聊天窗体时,自动隐藏。如果想让聊天窗体固定在桌面,只要拖动一下聊天窗口...
  • zouyujie1127
  • zouyujie1127
  • 2014年07月19日 22:31
  • 4537

C# 实现像QQ一样隐藏窗体

可以在屏幕四周自动隐藏窗体
  • haoduo123456789001
  • haoduo123456789001
  • 2016年06月22日 15:56
  • 586

winform实现任务栏隐藏、通知栏图标及右键、类似QQ隐藏窗体等功能

1。第一个功能是任务栏隐藏。winform下有个属性showintaskbar。直接改为false即可。 2。第二个功能是添加通知栏图标。有个控件为notifyicon,直接拉过来,添加图标即可。 3...
  • everlasting51
  • everlasting51
  • 2013年09月01日 18:59
  • 2642

Java实现窗体隐藏,功能类似于QQ窗口自动隐藏

自己写java程序从开始接触到现在有近两年的时间了,一直还没有怎么接触到j2ee方面的知识,比如说那些常用的框架(struts、spring、hibernate),自己都还没接触过。最近做项目又做到与...
  • ycb1689
  • ycb1689
  • 2012年04月16日 11:38
  • 932

模仿qq屏幕四周隐藏窗体

import java.awt.Point; import java.awt.Rectangle; import java.awt.event.ActionEvent; import java....
  • a771948524
  • a771948524
  • 2013年03月30日 23:01
  • 861

C#像QQ一样隐藏窗体

using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; ...
  • haoduo123456789001
  • haoduo123456789001
  • 2016年04月07日 09:56
  • 388

vc循序渐进实现仿QQ界面(五):半透明窗体与不透明控件

本篇演示实现仿QQ界面的中间客户区。QQ是可以调整界面透明度的,但是调整了透明度却连中间客户区也变得半透明了。客户区毕竟是软件最重要的部 分,是要与用户交互的,透明了就影响操作了,因此这里的客户区不...
  • Mirage520
  • Mirage520
  • 2012年03月09日 22:21
  • 1403
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:如何实现象QQ那般隐藏的窗体
举报原因:
原因补充:

(最多只允许输入30个字)