当鼠标移动到另一个上时,隐藏或显示图片框

时间:2011-08-21 00:13:48

标签: c# winforms

我的目标是创建这种情况:

  • 如果鼠标移过picturebox1,则picturebox2将显示。
  • 如果没有超过picturebox1,那么picturebox2将不会显示

如何编写C#代码来执行此操作?

3 个答案:

答案 0 :(得分:3)

只需使用MouseEnter和MouseLeave事件:

    private void pictureBox1_MouseEnter(object sender, EventArgs e) {
        pictureBox2.Visible = true;
    }

    private void pictureBox1_MouseLeave(object sender, EventArgs e) {
        pictureBox2.Visible = false;
    }

答案 1 :(得分:1)

您可以使用MouseHoverPictureBox事件......

答案 2 :(得分:0)

在PictureBox1的事件中,有一个“鼠标悬停事件”。然后,只需输入:

PictureBox2.Show();

(我使用Visual Basic,所以对您来说可能有所不同,但是修复起来非常简单。我在我以前的项目之一中发现了这一点。)

如果您希望它在鼠标触摸PictureBox1时立即显示PictureBox2,则将命令放入另一个标有“ Mouse Enter”的事件中

要在鼠标未触摸PictureBox1时隐藏PictureBox2,请执行“鼠标离开”事件。

您也可以这样做,如果将鼠标从PictureBox1上移开太长时间并将其放在窗口上,PictureBox2将消失。为此的事件在您创建的表单中,方法是选择窗口/表单并添加事件“鼠标悬停事件”,然后简单地编写:

PictureBox2.Hide();

(同样,我正在使用Visual Basic。)

我希望这会有所帮助!!! ☺