2015-01-15 126 views
0

在我的應用程序中,我有我的主表單和其他無邊框形式,位於頂部。當我最小化主窗體時,我想最小化所有窗體,但只顯示任務欄中的主窗體。目前發生的情況是主窗體進入任務欄,但所有其他開放窗體在任務欄上方的左下角創建小矩形。如何最大限度地減少無邊界形式?

有沒有辦法可以隱藏這些醜陋的矩形?點擊每個矩形會出現特定的窗口(我希望阻止)。我只想讓用戶選擇單擊任務欄中的主窗體來自動調出所有窗口。

感謝

編輯

要隱藏所有形式,我在主窗體中添加以下代碼到我的Resize事件:

Private Sub frmDashBoard_Resize(sender As Object, e As EventArgs) Handles Me.Resize 
     If Me.WindowState = FormWindowState.Minimized Then 
      If focusedForm IsNot Nothing Then 
       If focusedForm.Tag Is "StorePage" Then 
        focusedForm.WindowState = FormWindowState.Minimized 
       End If 
      End If 
     End If 

     If Me.WindowState = FormWindowState.Maximized Then 
      If focusedForm IsNot Nothing Then 
       If focusedForm.Tag Is "StorePage" Then 
        focusedForm.WindowState = FormWindowState.Maximized 
       End If 
      End If 
     End If 
End Sub 

基本上,我把我的StorePage到打開時打開focusedForm。因此focusedForm將引用我的應用程序中最頂層的表單。

+0

你輸入了什麼[ShowInTaskBar](http://msdn.microsoft.com/en-us/library/system.windows.forms.form.showintaskbar(v = vs.110).aspx)屬性你的無邊界形式? –

+0

用'ShowInTaskBar = True'隱藏最小化的窗口(又名難看的矩形) – Plutonix

+0

我將'ShowInTaskBar'屬性設置爲False。如果我將它設置爲True,那麼我會在任務欄中獲得我不想要的單個窗口的條目。如果可能的話,我只想爲主窗體創建一個任務欄條目。 – Riples

回答

0

不要低估你的形式,讓他們看不見相反,它如果你不希望看到他們,也沒有顯示他們在任務欄上,真的是你想要什麼:

If focusedForm.Tag Is "StorePage" Then 
    focusedForm.Visible = (Me.WindowState <> FormWindowState.Minimized) 
End If 

等。

+0

HeyHeyJC - 最大限度地減少工作,但當我恢復時,出於某種原因,它正在任務欄添加一個條目爲無邊界形式....奇怪 – Riples

+0

嗯。我在這裏沒有看到。 ShowInTaskBar仍然是False? – HeyHeyJC

+0

是的,但我已經重新添加到'WindowState = FormWindowState.Maximed'代碼中,它似乎修復了它。看起來像是在表單恢復時重置該屬性(無論如何,在我的應用程序中)。 – Riples

相關問題