Winform无边框窗口拖动及改变窗口大小
来源:互联网 发布:讨鬼传捏脸详细数据 编辑:程序博客网 时间:2024/06/05 04:14
Winform无边框窗口(FormBorderStyle属性为None)默认是不可以拖动或者改变大小的。
1. 拖动无边框窗口改变位置
方法1:通过mousedown、mousemove、mouseup、事件来改变窗口Location。
方法2:通过截获消息,进行处理,见下面代码后半部分。
2. 改变窗口大小
通过重写窗口消息处理函数,截获相关信息,并进行处理。
代码:
const int HTLEFT = 10;
const int HTRIGHT = 11;
const int HTTOP = 12;
const int HTTOPLEFT = 13;
const int HTTOPRIGHT = 14;
const int HTBOTTOM = 15;
const int HTBOTTOMLEFT = 0x10;
const int HTBOTTOMRIGHT = 17;
protected override voidWndProc(refMessagem)
{
switch (m.Msg)
{
case 0x0084:
base.WndProc(refm);
Point vPoint = newPoint((int)m.LParam& 0xFFFF,
(int)m.LParam >> 16 & 0xFFFF);
vPoint = PointToClient(vPoint);
if (vPoint.X <= 5)
if(vPoint.Y <= 5)
m.Result = (IntPtr)HTTOPLEFT;
elseif (vPoint.Y >= ClientSize.Height - 5)
m.Result = (IntPtr)HTBOTTOMLEFT;
else m.Result = (IntPtr)HTLEFT;
elseif (vPoint.X >= ClientSize.Width - 5)
if(vPoint.Y <= 5)
m.Result = (IntPtr)HTTOPRIGHT;
elseif (vPoint.Y >= ClientSize.Height - 5)
m.Result = (IntPtr)HTBOTTOMRIGHT;
else m.Result= (IntPtr)HTRIGHT;
elseif (vPoint.Y <= 5)
m.Result = (IntPtr)HTTOP;
elseif (vPoint.Y >= ClientSize.Height - 5)
m.Result = (IntPtr)HTBOTTOM;
break;
case 0x0201://鼠标左键按下的消息 用于实现拖动窗口功能
m.Msg = 0x00A1;//更改消息为非客户区按下鼠标
m.LParam = IntPtr.Zero;//默认值
m.WParam = new IntPtr(2);//鼠标放在标题栏内
base.WndProc(ref m);
break;
default:
base.WndProc(ref m);
break;
}
}
- Winform无边框窗口拖动及改变窗口大小
- Pyqt实现无边框窗口拖动及改变窗口大小
- Qt无边框窗口实现拖动和改变大小(修改)
- winform 无边框窗口 可改变窗体大小
- C# 鼠标拖动WinForm无边框窗口
- WinForm 无边框窗口 拖动实现
- 无边框窗口拖动
- java中 实现无标题无边框的窗体能够用鼠标拖动改变窗口大小
- node-webkit无边框窗口用纯JS实现拖动改变大小
- Qt窗口拖动及改变大小
- Qt窗口拖动及改变大小
- QT 无边框可拖动改变size窗口实现
- 实现无边框可拖动调整大小的阴影窗口
- WPF无边框窗口鼠标拖动缩放大小
- 无边框窗口拖动问题
- QT无边框窗口拖动
- winform 无窗口栏 拖动
- WPF 无标题栏窗口鼠标拖动改变大小
- 备用DNS域名服务器
- 树状数组求逆序数
- json对象load到表单中,这样后台Ajax过来的数据就可以直接加载
- c++ 之类成员函数作为函数的形参传递
- css负边距
- Winform无边框窗口拖动及改变窗口大小
- iframe跨域访问
- iOS学习之TableView02带Header
- c++ try catch
- 异常:Application failed 2 times due to AM Container
- Python练习程序(一)用户认证后,联系人信息查询
- Spring中AOP实例详解
- toast这么用避免连续多次点击产生的不好效果
- 【JavaScript】this关键字详解