做了个winform程序,在一个窗体上很多小图片,当鼠标移动到小图上时,打开一个新的窗体,并在新窗体的picturebox上显示大图,我想让鼠标离开小图的时候关闭显示大图的窗体,应该怎么实现呢
定义一个窗体PictureForm,风格无边框,上边一个picturebox1铺满窗体,总在最前(TopMost = true )
PictureForm重载接口Show()
C# code
public PictureForm.Show(Image img, Point ptLocation)
{
this.picturebox1.BackGroundImage = img;
this.Location = ptLocation;
this.Size = img.Size;
this.Show();
}
小图片所在窗体定义成员变量并实例化 PictureForm pictureForm = new PictureForm();
小图片控件MouseEnter事件
C# code
if(pictureForm.Visibe == false)
{
pictureForm.Show(e.Sender.BackGroundImage,Location) //位置可以自己指定
this.Focus(); //取回焦点
}
小图片控件MouseLeave事件
C# code
if(pictureForm.Visibe == true)
{
pictureForm.Hide() //位置可以自己指定
}
|