C# 无边框窗体之窗体移动实现代码
点击窗体任意位置移动窗体:
需要添加命名空间:
using System.Runtime.InteropServices;
代码如下:
private const int WM_NCLBUTTONDOWN = 0x00A1;
private const int HTCAPTION = 2;
[DllImport("user32.dll", CharSet = CharSet.Unicode)]
public static extern IntPtr SendMessage(IntPtr hwnd, int wMsg, IntPtr wParam, IntPtr lParam);
[DllImport("user32.dll", CharSet = CharSet.Unicode)]
public static extern bool ReleaseCapture();
protected override void OnMouseDown( MouseEventArgs e )
{
base.OnMouseDown( e );
if (e.Button == MouseButtons.Left) // 按下的是鼠标左键
{
ReleaseCapture(); // 释放捕获
SendMessage(this.Handle, WM_NCLBUTTONDOWN, (IntPtr)HTCAPTION, IntPtr.Zero); // 拖动窗体
}
}
相关推荐
-
C#实现Winform中打开网页页面的方法
本文实例讲述了C#实现Winform中打开网页页面的方法.分享给大家供大家参考.具体实现方法如下: 1.首先比较简单的我们知道有类似的方法如下 复制代码 代码如下: System.Diagnostics.Process.Start("http://www.baidu.com"); 2.比较灵活一点,可以定义窗口大小,我们要实现网页中脚本打开页面的方法,即window.open 那么,我们必然会想,如何调用页面的脚本呢?其实可以利用WebBrowser来实现 //连接 string ur
-
C#实现WinForm禁止最大化、最小化、双击标题栏、双击图标等操作的方法
本文实例讲述了C#实现WinForm禁止最大化.最小化.双击标题栏.双击图标等操作的方法.分享给大家供大家参考.具体实现方法如下: protected override void WndProc(ref Message m) { if (m.Msg==0x112) { switch ((int) m.WParam) { //禁止双击标题栏关闭窗体 case 0xF063: case 0xF093: m.WParam = IntPtr.Zero; break; //禁止拖拽标题栏还原窗体 case
-
C#实现Winform无边框移动的方法
本文实例讲述了C#实现Winform无边框移动的方法.分享给大家供大家参考.具体如下: 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
-
C# 无边框窗体边框阴影效果的简单实现
通过下面代码在构造函数中调用方法 SetShadow(); 即可实现无边框窗体的阴影效果了 需要添加命名空间 using System.Runtime.InteropServices; 复制代码 代码如下: private const int CS_DropSHADOW = 0x20000; private const int GCL_STYLE = (-26); [DllImport("user32.dll", CharSet = CharSet.Auto)]
-
C#利用反射技术实现去掉按钮选中时的边框效果
本文实例讲述了C#利用反射技术实现去掉按钮选中时的边框效果.分享给大家供大家参考.具体如下: public void HideFocusCues(Control control) { Type vType = typeof(Control); FieldInfo vFieldInfo = vType.GetField("uiCuesState", BindingFlags.Instance | BindingFlags.Public | BindingFlags.NonPublic |
-
C#通过重写Panel改变边框颜色与宽度的方法
本文实例讲述了C#通过重写Panel改变边框颜色与宽度的方法.分享给大家供大家参考.具体实现方法如下: using System; using System.Collections.Generic; using System.Text; using System.Runtime.InteropServices; using System.ComponentModel; using System.Windows.Forms; using System.Drawing; namespace Imag
-
C#中无边框窗体移动的简单实例
首先建一个Windows应用程序将Form1的 FormBorderStyle属性设置为Noe 复制代码 代码如下: Point mouseOff;//鼠标移动位置变量 bool leftFlag;//标记是否为左键 private void Form1_MouseDown(object sender, MouseEventArgs e) { if (e.Button == MouseButtons.Left)
-
C# 改变无边框窗体尺寸大小的方法
复制代码 代码如下: Code highlighting produced by Actipro CodeHighlighter (freeware)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;cons
-
解析C#中如何把控件的边框角画为圆弧
复制代码 代码如下: private void Draw(Graphics graphics, Control control) { float X = float.Parse(control.Width.ToString()) - 1; float Y = float.Parse(control.Height.ToString()) - 1; PointF[] pointfs = {
-
C#中改变DataGridView控件边框颜色的方法
DataGridView是Visual Studio中一个最重要的数据控件.它可以应用在大多数场合,功能强大,使用灵活.本文要重点介绍一下,如果设置DataGridView的边框颜色. 比尔盖次说"Apple机上没有哪一个软件我是觉得应该是微软首创的",这说明盖次对微软软件功能强大的自信心.而乔布斯而说,微软的软件毫无艺术感可言!这说明什么,说明微软的东西--丑! 乔帮主不愧是乔帮主,真是入木三分,直中要害!是的,默认情况下的DataGridView,真是丑!尤其是那个黑色的边框,不是
随机推荐
- 前端主流框架vue学习笔记第一篇
- 使用脚本实现故障时自动重启Apache
- 通过代理类实现java连接数据库(使用dao层操作数据)实例分享
- Python读写文件方法总结
- asp.net(c#)文件下载实现代码
- PHP弱类型的安全问题详细总结
- mysql 5.7.11 zip安装配置方法图文教程
- mysql alter table修改表命令整理
- 基于构造函数的五种继承方法小结
- JS实现点击事件统计的简单实例
- js style.display=block显示布局错乱问题的解决方法
- linux 查找大目录和大文件的方法(推荐)
- SSH框架网上商城项目第28战之使用Ajax技术局部更新商品数量和总价
- ASP.NET和MSSQL高性能分页实例代码
- javascript实现类似于新浪微博搜索框弹出效果的方法
- php使用crypt()函数进行加密
- Apache服务器中.htaccess文件的实用配置示例集锦
- JAVA Frame 窗体背景图片,首位相接滚动代码实例
- Android中如何利用AIDL机制调用远程服务
- 用PHP和ACCESS写聊天室(七)