Application.Exit 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
通知所有消息泵必须终止,并且在处理了消息以后关闭所有应用程序窗口。
重载
Exit() |
通知所有消息泵必须终止,并且在处理了消息以后关闭所有应用程序窗口。 |
Exit(CancelEventArgs) |
通知所有消息泵必须终止,并且在处理了消息以后关闭所有应用程序窗口。 |
Exit()
通知所有消息泵必须终止,并且在处理了消息以后关闭所有应用程序窗口。
public:
static void Exit();
public static void Exit ();
static member Exit : unit -> unit
Public Shared Sub Exit ()
示例
下面的代码示例列出窗体上列表框中的数字。 每次单击 button1
时,应用程序都会向列表中添加另一个数字。
方法 Main
调用 Run 以启动应用程序,这将创建窗体 listBox1
、 和 button1
。 当用户单击 button1
时, 方法将 button1_Click
数字 1 到 3 添加到列表框中,并显示 MessageBox。 如果用户在 上MessageBox单击“否”,该方法会将button1_Click
另一个数字添加到列表中。 如果用户单击“ 是”,应用程序将调用 Exit,以处理队列中的所有剩余消息,然后退出。
该示例要求 listBox1
将 和 button1
实例化并放置在窗体上。
public:
static void main()
{
// Starts the application.
Application::Run( gcnew Form1 );
}
private:
void button1_Click( Object^ sender, System::EventArgs^ e )
{
// Populates a list box with three numbers.
int i = 3;
for ( int j = 1; j <= i; j++ )
{
listBox1->Items->Add( j );
}
/* Determines whether the user wants to exit the application.
* If not, adds another number to the list box. */
while ( MessageBox::Show( "Exit application?", "",
MessageBoxButtons::YesNo ) == ::DialogResult::No )
{
// Increments the counter ands add the number to the list box.
i++;
listBox1->Items->Add( i );
}
// The user wants to exit the application. Close everything down.
Application::Exit();
}
public static void Main(string[] args) {
// Starts the application.
Application.Run(new Form1());
}
private void button1_Click(object sender, System.EventArgs e) {
// Populates a list box with three numbers.
int i = 3;
for(int j=1; j<=i; j++) {
listBox1.Items.Add(j);
}
/* Determines whether the user wants to exit the application.
* If not, adds another number to the list box. */
while (MessageBox.Show("Exit application?", "", MessageBoxButtons.YesNo) ==
DialogResult.No) {
// Increments the counter ands add the number to the list box.
i++;
listBox1.Items.Add(i);
}
// The user wants to exit the application. Close everything down.
Application.Exit();
}
<STAThread()> _
Shared Sub Main()
' Starts the application.
Application.Run(New Form1())
End Sub
Private Sub button1_Click(sender As object, e As System.EventArgs)
' Populates a list box with three numbers.
Dim i As Integer = 3
Dim j As Integer
For j = 1 To i - 1
listBox1.Items.Add(j)
Next
' Checks to see whether the user wants to exit the application.
' If not, adds another number to the list box.
While (MessageBox.Show("Exit application?", "", MessageBoxButtons.YesNo) = _
DialogResult.No)
' Increments the counter and adds the number to the list box.
i = i + 1
listBox1.Items.Add(i)
End While
' The user wants to exit the application. Close everything down.
Application.Exit()
End Sub
注解
方法 Exit 停止所有线程上所有正在运行的消息循环,并关闭应用程序的所有窗口。 此方法不一定强制退出应用程序。 Exit方法通常是从消息循环中调用的Run,并强制返回。 若要仅退出当前线程的消息循环,请调用 ExitThread。
Exit 引发以下事件并执行关联的条件操作:
对于 属性表示OpenForms的每个窗体,都会引发 一个 FormClosing 事件。 可以通过将其FormClosingEventArgs参数的 属性设置为 Cancel
true
来取消此事件。如果多个处理程序中的一个取消事件,则 Exit 返回 而不执行进一步操作。 否则,将为每个打开的窗体引发事件 FormClosed ,然后关闭所有正在运行的消息循环和窗体。
另请参阅
适用于
Exit(CancelEventArgs)
通知所有消息泵必须终止,并且在处理了消息以后关闭所有应用程序窗口。
public:
static void Exit(System::ComponentModel::CancelEventArgs ^ e);
public static void Exit (System.ComponentModel.CancelEventArgs e);
public static void Exit (System.ComponentModel.CancelEventArgs? e);
static member Exit : System.ComponentModel.CancelEventArgs -> unit
Public Shared Sub Exit (e As CancelEventArgs)
参数
返回应用程序中的任何 Form 是否已取消退出。