当前位置: 首页>>代码示例>>VB.NET>>正文


VB.NET Application.ApplicationExit事件代码示例

本文整理汇总了VB.NET中System.Windows.Forms.Application.ApplicationExit事件的典型用法代码示例。如果您正苦于以下问题:VB.NET Application.ApplicationExit事件的具体用法?VB.NET Application.ApplicationExit怎么用?VB.NET Application.ApplicationExit使用的例子?那么恭喜您, 这里精选的事件代码示例或许可以为您提供帮助。您也可以进一步了解该事件所在System.Windows.Forms.Application的用法示例。


在下文中一共展示了Application.ApplicationExit事件的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的VB.NET代码示例。

示例1: New

Public Sub New()
    MyBase.New()
    _formCount = 0

    ' Handle the ApplicationExit event to know when the application is exiting.
    AddHandler Application.ApplicationExit, AddressOf OnApplicationExit

    Try
        ' Create a file that the application will store user specific data in.
        _userData = New FileStream(Application.UserAppDataPath + "\appdata.txt", FileMode.OpenOrCreate)

    Catch e As IOException
        ' Inform the user that an error occurred.
        MessageBox.Show("An error occurred while attempting to show the application." +
                        "The error is:" + e.ToString())

        ' Exit the current thread instead of showing the windows.
        ExitThread()
    End Try

    ' Create both application forms and handle the Closed event
    ' to know when both forms are closed.
    _form1 = New AppForm1()
    AddHandler _form1.Closed, AddressOf OnFormClosed
    AddHandler _form1.Closing, AddressOf OnFormClosing
    _formCount = _formCount + 1

    _form2 = New AppForm2()
    AddHandler _form2.Closed, AddressOf OnFormClosed
    AddHandler _form2.Closing, AddressOf OnFormClosing
    _formCount = _formCount + 1

    ' Get the form positions based upon the user specific data.
    If (ReadFormDataFromFile()) Then
        ' If the data was read from the file, set the form
        ' positions manually.
        _form1.StartPosition = FormStartPosition.Manual
        _form2.StartPosition = FormStartPosition.Manual

        _form1.Bounds = _form1Position
        _form2.Bounds = _form2Position
    End If

    ' Show both forms.
    _form1.Show()
    _form2.Show()
End Sub

Private Sub OnApplicationExit(ByVal sender As Object, ByVal e As EventArgs)
    ' When the application is exiting, write the application data to the
    ' user file and close it.
    WriteFormDataToFile()

    Try
        ' Ignore any errors that might occur while closing the file handle.
        _userData.Close()
    Catch
    End Try
End Sub
开发者ID:VB.NET开发者,项目名称:System.Windows.Forms,代码行数:59,代码来源:Application.ApplicationExit

示例2: Form1

' 导入命名空间
Imports System.Windows.Forms

Public Class Form1
    Inherits System.Windows.Forms.Form
    Friend WithEvents button4 As System.Windows.Forms.Button
    Friend WithEvents button3 As System.Windows.Forms.Button
    Friend WithEvents button2 As System.Windows.Forms.Button
    Friend WithEvents button1 As System.Windows.Forms.Button

    Public Sub New()
        MyBase.New()

        Me.button4 = New System.Windows.Forms.Button()
        Me.button3 = New System.Windows.Forms.Button()
        Me.button2 = New System.Windows.Forms.Button()
        Me.button1 = New System.Windows.Forms.Button()
        Me.SuspendLayout()
        '
        Me.button4.Location = New System.Drawing.Point(24, 127)
        Me.button4.Name = "button4"
        Me.button4.Size = New System.Drawing.Size(144, 23)
        Me.button4.TabIndex = 7
        Me.button4.Text = "Show MessageBox"
        '
        Me.button3.Location = New System.Drawing.Point(24, 90)
        Me.button3.Name = "button3"
        Me.button3.Size = New System.Drawing.Size(144, 23)
        Me.button3.TabIndex = 6
        Me.button3.Text = "Throw Exception"
        '
        Me.button2.Location = New System.Drawing.Point(24, 53)
        Me.button2.Name = "button2"
        Me.button2.Size = New System.Drawing.Size(144, 23)
        Me.button2.TabIndex = 5
        Me.button2.Text = "Application.ExitThread"
        '
        Me.button1.Location = New System.Drawing.Point(24, 16)
        Me.button1.Name = "button1"
        Me.button1.Size = New System.Drawing.Size(144, 23)
        Me.button1.TabIndex = 4
        Me.button1.Text = "Application.Exit"
        '
        Me.AutoScaleBaseSize = New System.Drawing.Size(5, 13)
        Me.ClientSize = New System.Drawing.Size(192, 166)
        Me.Controls.AddRange(New System.Windows.Forms.Control() {Me.button4, Me.button3, Me.button2, Me.button1})
        Me.ResumeLayout(False)

    End Sub

    Shared Sub App_Exit(ByVal sender As Object, ByVal e As EventArgs)
        System.Diagnostics.Debug.WriteLine("App_Exit")
    End Sub

    Shared Sub App_Idle(ByVal sender As Object, ByVal e As EventArgs)
        System.Diagnostics.Debug.WriteLine("App_Idle")
    End Sub

    Shared Sub App_ThreadingException(ByVal sender As Object, ByVal e As System.Threading.ThreadExceptionEventArgs)
        System.Diagnostics.Debug.WriteLine("App_ThreadException")
        Dim msg As String = "A problem has occurred in this application." & vbCrLf & vbCrLf & _
            vbTab & e.Exception.Message & vbCrLf & vbCrLf & _
            "Would you like to continue the application so that " & vbCrLf & _
            "you can save your work?"
        Dim res As DialogResult = MessageBox.Show(msg, "Unexpected Error", MessageBoxButtons.YesNo)
        If res = System.Windows.Forms.DialogResult.Yes Then Exit Sub
        Application.Exit()
    End Sub

    Shared Sub DumpThreadID(ByVal name As String)
        System.Diagnostics.Debug.WriteLine(name & " thread id= " & System.AppDomain.GetCurrentThreadId().ToString())
    End Sub

    Shared Sub DummyThreadStart()
        DumpThreadID("Dummy Thread")
        AddHandler Application.ThreadExit, New EventHandler(AddressOf App_ThreadExit)
    End Sub

    Shared Sub Main()
        AddHandler Application.ThreadException, New System.Threading.ThreadExceptionEventHandler(AddressOf App_ThreadingException)
        AddHandler Application.Idle, New EventHandler(AddressOf App_Idle)
        AddHandler Application.ThreadExit, New EventHandler(AddressOf App_ThreadExit)
        AddHandler Application.ApplicationExit, New EventHandler(AddressOf App_Exit)

        DumpThreadID("UI Thread")
        Dim dummythread As System.Threading.Thread = New System.Threading.Thread(New System.Threading.ThreadStart(AddressOf DummyThreadStart))
        dummythread.Start()

        Application.Run(New Form1())

    End Sub

    Shared Sub App_ThreadExit(ByVal sender As Object, ByVal e As EventArgs)
        System.Diagnostics.Debug.WriteLine("App_ThreadExit on thread id= " & System.AppDomain.GetCurrentThreadId().ToString())
    End Sub

    Private Sub button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles button1.Click
        Application.Exit()
    End Sub
    Private Sub button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles button2.Click
        Application.ExitThread()
    End Sub
    Private Sub button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles button3.Click
        Throw New System.IO.FileLoadException()
    End Sub

End Class
开发者ID:VB程序员,项目名称:System.Windows.Forms,代码行数:107,代码来源:Application.ApplicationExit


注:本文中的System.Windows.Forms.Application.ApplicationExit事件示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。