zoukankan
html css js c++ java
移动无标题(边框)窗体
之前看到过一个CSDN上的教程,移动无标题窗体很麻烦很麻烦,要不断重画窗体。
使用这种FormBorderStyle设置为none的窗体,可以简单的实现自定义窗体皮肤,当然皮肤要自己做图片了。
今天无意间发现了一个很简单的代码,调用了系统API
在Program.cs中存在如下代码:
[DllImport(
"
user32.dll
"
)]
public
static
extern
bool
ReleaseCapture();
[DllImport(
"
user32.dll
"
)]
public
static
extern
bool
SendMessage(IntPtr hwnd,
int
wMsg,
int
wParam,
int
lParam);
public
const
int
WM_SYSCOMMAND
=
0x0112
;
public
const
int
SC_MOVE
=
0xF010
;
public
const
int
HTCAPTION
=
0x0002
;
然后在想要实现这样功能的窗体上打入如下代码:
private
void
frmInputPsd_MouseDown(
object
sender, MouseEventArgs e)
{
//
如果鼠标指针在标题栏范围内并且按下了鼠标左键,则触发移动标题栏方法
if
(e.Button
==
MouseButtons.Left
&&
e.Y
<=
25
)
{
Program.ReleaseCapture();
Program.SendMessage(
this
.Handle, Program.WM_SYSCOMMAND, Program.SC_MOVE
+
Program.HTCAPTION,
0
);
}
}
查看全文
相关阅读:
new和base的语法
js常用代码
无法识别connectionStrings
DataTable
字符串的操作时间格式化
Facade外观模式(转载cnblogs)
ArrayList下的循环绑定和循环删除
自定义属性与事件委托相结合的实例
泛型 开放类型和构造类型(基础学习)
C#策略模式 摘自jspcool
原文地址:https://www.cnblogs.com/top5/p/1723510.html
最新文章
javascript之getAttribute()方法 应用续
配置tomcat
使用 js 处理XML 文档
PHP中常用的mysql语句
SQL基本语句
设计模式
列表推导式
文件操作
装饰器高级
subprocess
热门文章
Python常用模块
面向对象编程
Python异常处理
包,模块
迭代器(iterator)
聚集索引和非聚集索引(sql server索引结构及其使用)
TCP端口
SQL用户恢复
VS2010快捷键
Iframe用法
Copyright © 2011-2022 走看看