C# 将光标移到pictureBox上
我试图在winforms应用程序中尽可能地实现一个图像按钮…使用asp.net时很容易 问题似乎是(我怀疑)当鼠标在picturebox内的图像上时 它没有响应或没有触发mouseEnter事件 看起来如果我有一张图片小于pictureBox大小,它会接受触发事件的原因,但在pictureBox内的图片上它不会 诀窍是将pictureBox设置为sizeMode=zoom。然后,当鼠标位于“imageButton”上方时,执行两项操作:将PictureBox的大小更改大一点+将光标更改为手动 因此,我将获得一种鼠标悬停的效果,就像使用asp.net一样 有人有这个问题吗? 起初我尝试了鼠标悬停,然后我认为enter会做得更好,因为它只要求鼠标通过图片框的边框。。。enter和hover事件对我都不起作用 编辑: 事件确实会触发,我可以看到,如果我最初将sizemode设置为CenterImage并在事件内部C# 将光标移到pictureBox上,c#,winforms,mouseevent,mouseenter,mousehover,C#,Winforms,Mouseevent,Mouseenter,Mousehover,我试图在winforms应用程序中尽可能地实现一个图像按钮…使用asp.net时很容易 问题似乎是(我怀疑)当鼠标在picturebox内的图像上时 它没有响应或没有触发mouseEnter事件 看起来如果我有一张图片小于pictureBox大小,它会接受触发事件的原因,但在pictureBox内的图片上它不会 诀窍是将pictureBox设置为sizeMode=zoom。然后,当鼠标位于“imageButton”上方时,执行两项操作:将PictureBox的大小更改大一点+将光标更改为手动 因
我要求sizemode=zoom,因此效果会发生..但是cursor.current=Cursors.Hand不会改变。似乎我应该更清楚如何使用Cursors类
cursor=Cursors.hand;
而不是
cursor.current=Cursors.hand;
那太尴尬了。这应该行得通
private void pictureBox1_MouseEnter(object sender, EventArgs e)
{
pictureBox1.SizeMode = PictureBoxSizeMode.StretchImage;
pictureBox1.Cursor = Cursors.Hand;
}
private void pictureBox1_MouseLeave(object sender, EventArgs e)
{
pictureBox1.SizeMode = PictureBoxSizeMode.Zoom;
pictureBox1.Cursor = Cursors.Default;
}
仅在pictureBox上添加MouseMove事件并为此设置光标
private void pictureBox1\u MouseMove(对象发送方,MouseEventArgs e)
{
pictureBox1.Cursor=光标.Hand;
}
请为您的代码提供一些解释,以便其他人更容易理解。