2016-08-18 49 views
-2

我試圖讓我的程序最小化和最大化按鍵(我使用h鍵)。按鍵最小化和最大化程序

Private Sub Form1_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles Me.KeyPress 
    Select Case e.KeyChar 
     Case "h" 
      If Me.WindowState = FormWindowState.Maximized Then 
       Me.WindowState = FormWindowState.Minimized 
      ElseIf Me.WindowState = FormWindowState.Minimized Then 
       Me.WindowState = FormWindowState.Maximized 
      End If 
    End Select 
End Sub 
End Class 

我不明白它爲什麼贏得'工作。

+0

可能重複[聽程序在後臺時按鍵](http://stackoverflow.com/questions/38153300/listen-to-key-press-when-the-program-is-in-背景) –

+0

這是做什麼呢? – Brandon

+0

@Brandon:可能沒什麼。我懷疑這與他按下鍵時沒有專注的表單有關。 –

回答

0

嗯也許它不工作,因爲你的表單不處於最大化狀態或最小化狀態。總之你的表單處於正常狀態。先試試這一步。

1st:將窗體的關鍵預覽設置爲True。 然後在你的代碼:

Private Sub Form1_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles Me.KeyPress 
Select Case e.KeyChar 
    Case "h" 
     If Me.WindowState = FormWindowState.Maximized Then 
      Me.WindowState = FormWindowState.Minimized 
     ElseIf Me.WindowState = FormWindowState.Minimized Then 
      Me.WindowState = FormWindowState.Maximized 
     else 
      Me.WindowState = FormWindowState.Minimized 'add this. 
     End If 
End Select 
End Sub 

如果這個代碼dind't工作努力將它轉化成鍵按下事件。希望這能解決你的問題。

+0

如果這有助於您或找到答案,請將其標記爲不讓人混淆。或者如果你有自己的答案,並由你自己解決,然後張貼一些研究選項 – Muj