[C#][VB.NET]关闭表单时显示对话框,用以再次确认是否关闭
1. 问题描述
关闭程序时显示对话框,用以再次确认是否关闭
2. 方法
只要在 Form Closing 事件,显示 MessageBox,并且当使用者选择 否 时,让 e.Cancel = true 即可
C# 程序
private voID Form1_FormClosing(object sender,FormClosingEventArgs e) { if (MessageBox.Show("是否确定要关闭程序","关闭程序",MessageBoxbuttons.YesNo) == DialogResult.No) { e.Cancel = true; } }
VB.NET 程序
Private Sub Form1_FormClosing(ByVal sender As System.Object,ByVal e As System.windows.Forms.FormClosingEventArgs) Handles MyBase.FormClosing If MessageBox.Show("是否确定要关闭程序",MessageBoxbuttons.YesNo) = DialogResult.No Then e.Cancel = True End If End Sub
3. 执行结果
程序关闭时,跳出如下图的对话框,按是(Y)则关闭程序,按否(N)则不关闭程序
4. 附注
CloseReason 枚举类型 : 指定关闭表单的原因 (此部分感谢 蹂躏 的提醒)
关闭表单时,可以透过 CloseReason 指定关闭表单的原因
没有指定时,在电脑关机时,想要强制关闭此程序,而关闭程序时,会执行 Form Closing 事件,此时d出对话框,导致电脑关机中断。
以下程序将 CloseReason 的部分补上 :
C# 程序
private voID Form1_FormClosing(object sender,FormClosingEventArgs e) { if (e.CloseReason != CloseReason.windowsShutDown) { if (MessageBox.Show("是否确定要关闭程序",MessageBoxbuttons.YesNo) == DialogResult.No) { e.Cancel = true; } } }
VB.NET 程序
Private Sub Form1_FormClosing(ByVal sender As System.Object,ByVal e As System.windows.Forms.FormClosingEventArgs) Handles MyBase.FormClosing If (e.CloseReason <> CloseReason.windowsShutDown) Then If MessageBox.Show("是否确定要关闭程序",MessageBoxbuttons.YesNo) = DialogResult.No Then e.Cancel = True End If End If End Sub
5. 参考
程序执行时,使用者执行关机动作,无法正常关机问题
程序关闭 继续执行
表单右上角之关闭功能
原文:大专栏 [C#][VB.NET]关闭程序时显示对话框,用以再次确认是否关闭
总结以上是内存溢出为你收集整理的[C#][VB.NET]关闭程序时显示对话框,用以再次确认是否关闭全部内容,希望文章能够帮你解决[C#][VB.NET]关闭程序时显示对话框,用以再次确认是否关闭所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)