2011-12-15 89 views
1

我正在開發一個使用VB.NET的WinForm應用程序(我也很流利地使用C#,所以發佈任何語言),並遇到了一些麻煩。VB.NET擴展圖像,同時防止在表單上點擊

我的表單上有一張圖片,我想單擊時展開。我已經設置了所有這些邏輯,但是我希望當它展開時,用戶必須點擊PictureBox右上角的'X'來關閉展開後的圖像。在顯示圖像時,我不希望用戶能夠與表單上的其他用戶界面進行交互。

基本上我需要一些東西(原諒我切換到HTML,但我知道這在那裏工作)創建一個覆蓋整個屏幕的div,使它不透明,把另一個div放在上面,然後把圖像和頂部的'X'按鈕。我嘗試過使用不透明窗體(沒有工作),並使用透明背色的面板(也沒有工作)。我採取了截圖的形式,將其設置爲一個PictureBox的圖像,並將PictureBox放在上面。然而,這似乎是太多矯枉過正的方式。

我當前的佈局是MainForm - >動態創建新窗體並將其添加到主窗體 - >將圖片框添加到動態窗體並將其圖像設置爲MainForm的屏幕截圖 - >在該圖片框的頂部添加一個圖片框並設置其形象到我想要的擴大圖像

有什麼建議嗎?

+0

WinForm應用程序? – curtisk 2011-12-15 16:52:11

+0

是的,woops。我應該加上。 – Eliezer 2011-12-15 16:52:51

回答

2

您是否以另一種形式打開大版本?然後在picturebox上的點擊事件中這樣簡單的事情應該就足夠了(在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 
     }