C#中让窗体自动靠边隐藏
1: private void Yincangtimer_Tick(object sender, EventArgs e)//窗体隐藏事件
2: {
3: int a = Control.MousePosition.Y;//光标的在屏幕中的 Y 坐标
4: int b = Control.MousePosition.X;//光标的在屏幕中的 X 坐标
5: int height = Screen.PrimaryScreen.WorkingArea.Height;//屏幕的高
6: int width = Screen.PrimaryScreen.WorkingArea.Width;//屏幕的宽
7: int x = this.Left;//窗体的在屏幕中的X坐标
8: int y = this.Top;//窗体的在屏幕中的Y坐标
9: //判断光标是否在窗体内
10: if (b >= x && b <= (this.Width + x) && a >= y && a <= (this.Top + this.Height))
11: {
12: return;
13: }
14: else
15: {//隐藏窗体
16: if ((x + this.Width) >= width)
17: {
18: this.Top = this.Top;
19: this.Left = width - 5;
20: }
21: else if (x <= 0)
22: {
23: this.Top = this.Top;
24: this.Left = 5 - this.Width;
25: }
26: else if (y <= 0)
27: {
28: this.Left = this.Left;
29: this.Top = 5 - this.Height;
30:
31: }
32: else
33: {
34:
35: return;
36: }
37: }
38: }
39:
40: //光标离开窗体
41: private void MainForm_MouseLeave(object sender, EventArgs e)
42: {
43: Yincangtimer.Start();
44: }
45: //光标进入窗体
46: private void MainForm_MouseEnter(object sender, EventArgs e)
47: {
48: int height = Screen.PrimaryScreen.WorkingArea.Height;//屏幕的高
49: int width = Screen.PrimaryScreen.WorkingArea.Width;//屏幕的宽
50:
51: if (this.Left < 0)
52: {
53: this.Left = 0;
54: this.Top = this.Top;
55: Yincangtimer.Stop();
56: }
57: else if (this.Left > width - this.Width)
58: {
59: this.Left = width - this.Width;
60: this.Top = this.Top;
61: Yincangtimer.Stop();
62: }
63: else if (this.Top <= 0)
64: {
65: this.Left = this.Left;
66: this.Top = 0;
67: Yincangtimer.Stop();
68: }
69:
70: else
71: { return; }
72: }
C#中让窗体自动靠边隐藏的更多相关文章
- QQ揭秘:如何实现窗体靠边隐藏?【低调赠送:QQ高仿版GG 4.2 最新源码】
QQ有个靠边隐藏的功能,使用起来很方便:在屏幕上拖动QQ的主窗体,当窗体的上边沿与屏幕的上边沿对齐时,主窗体就会duang~~地隐藏起来,当将鼠标移到屏幕上边沿的对应区域时,主窗体又会duang~~显 ...
- c# winform 中的 工具栏自动隐藏 splitter用法 带源码
c# winform 中的 工具栏自动隐藏 splitter用法 带源码 代码下载地址 http://download.csdn.net/detail/simadi/7649313
- C#如何实现类似QQ那样靠边隐藏的功能
http://www.cnblogs.com/yechensi/archive/2009/08/02/1537145.html C#如何实现类似QQ那样靠边隐藏的功能 你想过为自己的程序添加靠边隐藏的 ...
- WPF中不规则窗体与WebBrowser控件的兼容问题解决办法
原文:WPF中不规则窗体与WebBrowser控件的兼容问题解决办法 引言 这几天受委托开发一个网络电视项目,要求初步先使用内嵌网页形式实现视频播放和选单,以后再考虑将网页中的所有功能整合进桌面程序. ...
- 自动显示隐藏布局的listView
借助View的OnTouchListener接口来监听listView的滑动,通过比较与上次坐标的大小,判断滑动方向,并通过滑动方向来判断是否需显示或者隐藏对应的布局,并且带有动画效果. 1.自动显示 ...
- C#中WinForm窗体事件的执行次序
C#中WinForm窗体事件的执行次序如下: 当 Windows Form 应用程序启动时,会以下列顺序引发主要表单的启动事件: System.Windows.Forms.Control ...
- ASP.NET中 WebForm 窗体控件使用及总结【转】
原文链接:http://www.cnblogs.com/ylbtech/archive/2013/03/06/2944675.html ASP.NET中 WebForm 窗体控件使用及总结. 1.A, ...
- Delphi中的窗体创建与销毁
Delphi中的窗体,有模式窗体与非模式窗体两种.两种窗体的调用方式不同,模式窗体使用ShowModal显示,非模式窗体使用Show显示.当显示模式窗体的时候你是不能操作本程序的其他窗体的,你不能把焦 ...
- Windows Mobile X图标如何销毁窗体而非隐藏
在Windows Mobile窗体上,有“OK”和“X”两种形式按钮.1.在Form的属性里,设置“MinimizeBox=false”,则窗体显示”OK”,点击该按钮窗体销毁并退出.2.设置“Min ...
随机推荐
- 优化Hoax or what的思考
在抽取MinHeap的时候,涉及到重载,覆盖,虚函数等,有几点之前没注意到的问题在这里总结下: 1. 覆盖(override)只要是函数同名就会被覆盖,子类指针若调用父类的同名不同参数的函数的话,会在 ...
- open/write/read
C语言中open函数 作用:打开和创建文件. 简述: 1 2 3 4 #include <fcntl.h> int open(const char *pathname, int flags ...
- 【剑指offer】找出数组中出现一次的两个数
2013-09-08 10:50:46 一个整型数组中,除了两个数字之外,其他数字都出现了2次,找出这两个只出现一次的数字,要求时间复杂度是O(N),空间复杂度是O(1). 小结: 任何数与0异或,结 ...
- 微信公众平台 Premature end of file
今天在研究微信公众平台 自动接收发送消息的时候,在如下代码: public String processRequest(HttpServletRequest request) { String res ...
- 1837. Isenbaev's Number(floyd)
1837 被数据结构部分打击的不行了 换地 刷点简单的 图论第一题 floyd水过 #include <iostream> #include<cstdio> #include& ...
- poj 2253 Frogger(最短路 floyd)
题目:http://poj.org/problem?id=2253 题意:给出两只青蛙的坐标A.B,和其他的n-2个坐标,任一两个坐标点间都是双向连通的.显然从A到B存在至少一条的通路,每一条通路的元 ...
- 结构体buf_chunk_t
/** Buffer pool chunk comprising buf_block_t */ typedef struct buf_chunk_struct buf_chunk_t; /** A c ...
- [原]Unity3D深入浅出 - 脚本开发基础(Scripts)
常用脚本事件: Update:每帧调用一次 Start:在第一次Update执行前调用 Awake:脚本实例在创建时调用 FixedUpdate:每个固定物理时间间隔调用一次 LateUpdate:每 ...
- [swustoj 183] 种树
种树(0183) 问题描述 Aconly有一块矩形的地,因为这块地里有很多石头,耕作很不方便,所以他打算在这块地上种一些果树.这块地用一个只含‘#’和‘*’的N*M的矩阵来表示,‘#’表示泥土,‘*’ ...
- Android UI设计系统---LayoutParams[转]
LayoutParams继承于Android.View.ViewGroup.LayoutParams. LayoutParams相当于一个Layout的信息包,它封装了Layout的位置. ...