在winform中怎么获取鼠标点击某个控件时,它对于这个控件来说的时的坐标?

来源:百度知道 编辑:UC知道 时间:2024/05/31 15:53:22
当我点击一个pictureBox某处时:我想在点击处生成一个文本框,怎么获取鼠标点击时在pictureBox1中的坐标是什么?
Point mx = MousePosition; 这个获取的鼠标坐标是相当于屏幕来说的,我想获取相对于pictureBox1来说的鼠标坐标

Point mx = pictureBox1.PointToClient(MousePosition);

两种方法:

1.在pictureBox1的MouseDown事件里得到坐标:

private void pictureBox1_MouseDown(object sender, MouseEventArgs e)
{
int x = e.X;
int y = e.Y;
}

//x,y就是相对pictureBox1的坐标,

2.先得到相对于屏幕的坐标,然后通过pictureBox1.PointToClient()转换到相对于pictureBox1的坐标:

Point mx = MousePosition;
Point mx2 = pictureBox1.PointToClient(mx);

//mx2就是相对pictureBox1的坐标,