在.net里如何锁定窗体,拖动标题栏,使其不移动?
在vb.net里,怎样可以锁定窗口的位置,在用鼠标拖动窗口的标题栏时,窗口不移动,该如何实现?我在这里先谢谢各位回答问题的好心人们!...
在vb.net里,怎样可以锁定窗口的位置,在用鼠标拖动窗口的标题栏时,窗口不移动,该如何实现?
我在这里先谢谢各位回答问题的好心人们! 展开
我在这里先谢谢各位回答问题的好心人们! 展开
1个回答
展开全部
实现方法如下:
1.引用命名空间
using System.Runtime.InteropServices;
2.声明如下变量:
public class Form1 : System.Windows.Forms.Form
{
//.....
[DllImport("user32.dll",EntryPoint="GetSystemMenu")]
extern static IntPtr GetSystemMenu(IntPtr hWnd, IntPtr bRevert);
[DllImport("user32.dll",EntryPoint="RemoveMenu")]
extern static int RemoveMenu(IntPtr hMenu, int nPos, int flags);
//.....
}
3.在Form的构造函数里加入代码
public Form1()
{
const int MF_BYPOSITION = 0x0400;
const int MF_REMOVE = 0x1000;
FormBorderStyle = FormBorderStyle.FixedSingle;
MaximizeBox = false;
MinimizeBox = false;
RemoveMenu(GetSystemMenu(Handle,IntPtr.Zero),1,MF_BYPOSITION |MF_REMOVE);
}
就OK啦
1.引用命名空间
using System.Runtime.InteropServices;
2.声明如下变量:
public class Form1 : System.Windows.Forms.Form
{
//.....
[DllImport("user32.dll",EntryPoint="GetSystemMenu")]
extern static IntPtr GetSystemMenu(IntPtr hWnd, IntPtr bRevert);
[DllImport("user32.dll",EntryPoint="RemoveMenu")]
extern static int RemoveMenu(IntPtr hMenu, int nPos, int flags);
//.....
}
3.在Form的构造函数里加入代码
public Form1()
{
const int MF_BYPOSITION = 0x0400;
const int MF_REMOVE = 0x1000;
FormBorderStyle = FormBorderStyle.FixedSingle;
MaximizeBox = false;
MinimizeBox = false;
RemoveMenu(GetSystemMenu(Handle,IntPtr.Zero),1,MF_BYPOSITION |MF_REMOVE);
}
就OK啦
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询