2012-07-27 2 views
2
Private Sub frmMain_FormClosing(sender As Object, e As System.Windows.Forms.FormClosingEventArgs) Handles Me.FormClosing 
    e.Cancel = True 
    Me.WindowState = FormWindowState.Minimized 
End Sub 

안녕하세요!.NET 양식 닫기를 취소하면 Windows 종료시 닫히지 않습니다.

위의 간단한 코드를 사용하고 있습니다. 그러나 컴퓨터를 종료하는 동안 응용 프로그램이 열려 있으면 Windows는 컴퓨터가 종료 될 때까지 기다리거나 계속하기 위해 종료하도록 기다립니다. 사용자가 응용 프로그램을 닫으려고하는지 또는 Windows가 있는지 알 수있는 방법을 찾지 못했습니다. 내가 아는 전부는 두 가지 상황에서 윈도우가 윈도우에 가까운 메시지를 보내고 이것이 정말로 도움이되지 않는다는 것입니다. 나는 다른 방법을 생각할 수 있지만 아직 "명확한"방법을 알고 있어야합니다.

Protected Overrides Sub OnFormClosing(ByVal e As FormClosingEventArgs) 
    If e.CloseReason <> CloseReason.WindowsShutDown Then 
    e.Cancel = True 
    Me.WindowState = FormWindowState.Minimized 
    End If 
End Sub 

답변

1

당신이 list에서 가까운 이유 열거를 구현 할 수 있어야한다 : 사전 :

+1

고마워요! closereason에 관심을 지불 한 적이 없어 보인다 :) – theGD

3

가까운 이유도 있습니다에서

감사합니다. 이렇게하면 컴퓨터를 종료 할 수 있습니다. eShowDown 및/또는 TaskManagerClosing 열거 형을 e.CloseReason에 구현해야합니다.