当前位置:  首页>> 技术小册>> C#学习笔记

1.去边框 :

  • 选中要去除边框的窗体,按F4调出窗体属性。

  • 在属性框中找到FormBorderStyle选择none。

2.去掉边框后实现对窗口程序的拖动

1)双击窗体,进入程序设计界面 添加 using System.Runtime.InteropServices;

在 { InitializeComponent(); } 后添加以下代码

  1. [DllImport("user32.dll")]
  2. public static extern bool ReleaseCapture();
  3. [DllImport("user32.dll")]
  4. public static extern bool SendMessage(IntPtr hwnd, int wMsg, int wParam, int lParam);
  5. bool beginMove = false;//初始化鼠标位置
  6. int currentXPosition;
  7. int currentYPosition;

2)回到窗体界面,点击

属性框上部有个小闪电,点击进入 事件页面

2)分别点击进入MouseDown 、 MouseMove、MouseUp 并分别添加以下代码

  1. //获取鼠标按下时的位置
  2. private void loginForm\ _MouseDown(object sender, MouseEventArgs e) {
  3. if (e.Button == MouseButtons.Left) {
  4. beginMove = true;
  5. currentXPosition = MousePosition.X; //鼠标的x坐标为当前窗体左上角x坐标
  6. currentYPosition = MousePosition.Y; //鼠标的y坐标为当前窗体左上角y坐标
  7. }
  8. }
  9. //获取鼠标移动到的位置
  10. private void loginForm_MouseMove(object sender, MouseEventArgs e) {
  11. if (beginMove) {
  12. this.Left += MousePosition.X - currentXPosition; //根据鼠标x坐标确定窗体的左边坐标x
  13. this.Top += MousePosition.Y - currentYPosition; //根据鼠标的y坐标窗体的顶部,即Y坐标
  14. currentXPosition = MousePosition.X;
  15. currentYPosition = MousePosition.Y;
  16. }
  17. }
  18. //释放鼠标时的位置
  19. private void loginForm_MouseUp(object sender, MouseEventArgs e) {
  20. if (e.Button == MouseButtons.Left) {
  21. currentXPosition = 0; //设置初始状态
  22. currentYPosition = 0;
  23. beginMove = false;
  24. }
  25. }

该分类下的相关小册推荐:

暂无相关推荐.