2011-06-16 93 views
0

是否有可能检测到用户点击加载图像或C#表单上的位图的用户? 。只需要它独立于图像而不是屏幕位置!C#检测用户点击图像/位图的位置

+2

WPF,WinForms,ASP.NET,Silverlight,WP7,...? – 2011-06-16 17:41:03

+0

WinForms!或ASP.NET! – Sudantha 2011-06-16 17:41:37

+0

@Sudantha你需要两个或其中之一,因为解决方案会有很大的不同。 – 2011-06-16 17:42:17

回答

3

那么,你不告诉我们你是如何显示图像,所以我不得不猜测。我假设一个图片框以原始分辨率显示图片。所以,在这种情况下:

class MyForm : Form 
{ 
    public MyForm() 
    { 
     picturebox1.MouseDown += picturebox1_MouseDown;  
    } 

    private void picturebox1_MouseDown(object sender, MouseEventArgs e) 
    { 
     if((e.Button & MouseButtons.Left) == MouseButtons.Left) 
     { 
      var imagePos = e.Location; // that's it 
     } 
    } 
} 

如果您的图像缩放,您将需要进行数学运算。获取控件的WidthHeight,并找出它们之间的比例和图像的尺寸。乘以该比例的点击位置。