VB.NET扩展图像同时防止表单上的点击

时间:2011-12-15 16:50:20

标签: c# vb.net image panel transparent

我正在使用VB.NET开发一个WinForm应用程序(我也能熟练使用C#,所以用任何语言发帖)并且遇到了一些麻烦。

我的表单上有一个图像,我想在点击时展开。我拥有所有逻辑集,但我希望当它扩展时,用户必须单击PictureBox右上角的“X”才能关闭展开的图像。在显示图像时,我不希望用户能够与表单上的其余UI进行交互。

基本上我需要一些东西(原谅我切换到HTML,但我知道这可以在那里工作)创建一个覆盖整个屏幕的div,使其不透明,在其上放置另一个div,然后放入图像和顶部的“X”按钮。我尝试过使用不透明的表格(不起作用),以及带有透明背景的面板(也没用)。我已经使用了表单的截图,将其设置为PictureBox的图像,并将PictureBox置于其上。然而,这似乎有点过分。

我目前的布局是MainForm - >动态创建新表单并将其添加到主表单 - >将PictureBox添加到动态表单并将其图像设置为MainForm的屏幕截图 - >在PictureBox顶部添加PictureBox并将其图像设置为我想要的扩展图像

有什么建议吗?

1 个答案:

答案 0 :(得分:2)

您是否以其他形式打开大版本?然后在图片框上的点击事件中这样简单的东西就足够了(在c#中采样,但对于vb.net也是如此)

private void pictureBox1_Click(object sender, EventArgs e)
        {
            frmPicture frm = new frmPicture(); //form that has large version of pic
            frm.ShowDialog(); //this makes the form modal
        }