winfrom鼠标点击位置

//内容待整理


private void From1_MouseClick(object sender, MouseEventArgs e)

        {
            Point p = e.Location;
            string X = p.X.ToString();
            string Y = p.Y.ToString();
            MessageBox.Show(p.ToString(),X+Y);           

        }




API函数

[DllImport("user32.dll")]
        private static extern bool GetCursorPos(out Point p);
 
使用
            Point p;
            GetCursorPos(out p);



.Net封装好的方法

int x = Control.MousePosition.X;
int y = Control.MousePosition.Y;

用API方法

using System.Runtime.InteropServices;
Point p;
[DllImport("user32.dll")]
public static extern bool GetCursorPos(out Point pt);
private void timer1_Tick(object sender, EventArgs e)
{
GetCursorPos(out p);
label1.Text = p.X.ToString();//X坐标
label2.Text = p.Y.ToString();//Y坐标
}




可以用Control.MousePosition获得当前鼠标的坐标,使用PointToClient计算鼠标相对于某个控件的坐标,如下
Point screenPoint = Control.MousePosition;//鼠标相对于屏幕左上角的坐标
Point formPoint = this.PointToClient(Control.MousePosition);//鼠标相对于窗体左上角的坐标
Point contextMenuPoint = contextMenuStrip1.PointToClient(Control.MousePosition); //鼠标相对于contextMenuStrip1左上角的坐标

阅读更多
版权声明:本文为博主原创文章,转载请注明出处。 https://blog.csdn.net/sinat_27305053/article/details/78468103
文章标签: Winform C#
个人分类: C#
所属专栏: 趣趣李的C#开发心得
上一篇深入理解C#的装箱和拆箱
下一篇dotTrace Performance使用心得
想对作者说点什么? 我来说一句
相关热词

没有更多推荐了,返回首页

关闭
关闭
关闭