繁体   English   中英

如何在C#中创建HotSpot?

[英]How to create HotSpot in C#?

我想在我的winform应用程序中的图像上创建一个热点。 我按照此处发布的解决方案进行操作,但我不知道应将坐标放在哪里才能使此方法起作用:

protected override void OnMouseMove(MouseEventArgs mouseEvent) 
{ 
     string X = mouseEvent.X.ToString();
     string Y = mouseEvent.Y.ToString(); 
}

我应该在哪里放置坐标? 我有两个坐标(X,Y):110、45

如果要响应鼠标悬停在图像内的矩形上

private Rectangle _hotspot = new Rectangle(20, 30, 10, 10);

protected override void OnMouseDown(MouseEventArgs e)
{
    if (e.Button == MouseButtons.Left)
    {
        if (_hotspot.Contains(e.Location))
        {
            // respond to the mouse being in the hotspot
        }
    }
}

如果要将图像放置在这些坐标上,则需要使用这些坐标设置图像的顶部和左侧

double X = mouseEvent.X;
double Y = mouseEvent.Y;

pictureBox.Top = X;
pictureBox.Left = Y;

如果您只想知道例如有人悬停在图片框上的时间,请使用此事件

private void pictureBox_MouseMove(object sender, System.Windows.Forms.MouseEventArgs e)
{

 // do here what you want
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM