C# Picturebox OnMouseClick坐标与控件而非表单相关
我有一个windows窗体,里面有一个PictureBox控件,我用一个图像填充该控件 当转到MouseDown事件时,能够获得坐标,但是是整个表单的坐标,而不仅仅是控件的坐标,所以我没有得到C# Picturebox OnMouseClick坐标与控件而非表单相关,c#,winforms,coordinates,picturebox,mousedown,C#,Winforms,Coordinates,Picturebox,Mousedown,我有一个windows窗体,里面有一个PictureBox控件,我用一个图像填充该控件 当转到MouseDown事件时,能够获得坐标,但是是整个表单的坐标,而不仅仅是控件的坐标,所以我没有得到(10,15)的坐标,而是得到(110,40),这是因为它得到了表单的鼠标位置 我可以只获取包含在PictureBox控件中的坐标吗?使用x-PictureBox.Left和y-PictureBox.Top 或 在事件处理程序中为PictureBox而不是表单编写代码。使用x-PictureBox.Left
(10,15)
的坐标,而是得到(110,40)
,这是因为它得到了表单的鼠标位置
我可以只获取包含在PictureBox控件中的
坐标吗?使用x-PictureBox.Left
和y-PictureBox.Top
或
在事件处理程序中为PictureBox而不是表单编写代码。使用x-PictureBox.Left
和y-PictureBox.Top
或
在PictureBox的事件处理程序中编写代码,而不是表单。试试这个
private void PictureBox1_MouseDown(object sender, System.Windows.Forms.MouseEventArgs e)
{
int x = e.x - PictureBox1.Left ;
int y = e.y - PictureBox1.Top ;
MessageBox.Show(x.tostring + "," + y.tostring);
}
试试这个
private void PictureBox1_MouseDown(object sender, System.Windows.Forms.MouseEventArgs e)
{
int x = e.x - PictureBox1.Left ;
int y = e.y - PictureBox1.Top ;
MessageBox.Show(x.tostring + "," + y.tostring);
}
请出示鼠标事件代码好吗?请出示鼠标事件代码好吗?