当然可以,只需要用到鼠标事件,这里我用MouseDown事件,你可以根据需要改用MouseUp事件。代码如下:
Private Sub Form_MouseDown(Button As Integer, Shift As Integer, x As Single, y as Single)
If Button=2 Then End
End Sub
要求先登陆后再进入界面。因此,若是用户取消登陆,则要退出应用程序。
注意,用于重新设计了登陆界面,FormBorderStyle设置的为None,因此窗体右上角并没有关闭的按钮,按照常规如下方法来实现退出,是不现实的。
[csharp] view plain copy
private void F_Login_Close(object sender, EventArgs e)
{
ApplicationExit();
}
那么依次类推,可否添加一个按钮,让其响应事件如上所示呢?
[csharp] view plain copy
private void button1_Click(object sender, EventArgs e)
{
ApplicationExit();
}
通过调试后发现,使用按钮添加如上代码后,程序并没有退出!!!
同样是一个ApplicationExit(),为什么两个地方就不一样了???button事件里面ApplicationExit()怎么不能退出应用程序??
ApplicationExit()停止在所有线程上运行的所有消息循环,并关闭应用程序的所有窗口。该方法并不强制退出该应用程序。Exit方法通常从一个消息循环内调用,该方法强制Run返回。若要只退出当前线程的某个消息循环,请调用ExitThread。
Exit引发下列事件并执行关联的条件 *** 作:
为OpenForms属性表示的各个窗体引发FormClosing事件。可以通过将这些窗体的FormClosingEventArgs参数的Cancel属性设置为true,取消此事件。
如果多个处理程序的其中之一取消该事件,则Exit将返回而无进一步 *** 作。否则,将为每个打开的窗体引发FormClosed事件,然后关闭所有正在运行的消息循环和窗体。
也就是说Exit会引发被应用程序打开的所有窗体的FormClosing和FormClosed事件。而且,如果某个窗口的FormClosingEventArgs参数的Cancel属性被设置为true,那么Exit将不会关闭所有窗口和停止所有的消息循环。
从上面可以知道ApplicationExit()并不强制退出应用程序,要想强制退出整个应用程序要用EnvironmentExit():终止当前进程并为基础 *** 作系统提供指定的退出代码。
通过以上解释,不难找出程序没关闭的原因。知道原因后,除了上面所给出的方法外,还有另外一种简单的方法如下:
[csharp] view plain copy
private void button1_Click(object sender, EventArgs e)
{
thisClose();
}
private void F_Login_Close(object sender, EventArgs e)
{
if(F_MainLogin_User=="")ApplicationExit();//需要加一句判断,不然正常登陆时,它也自动退出了
}
原理一看就明白了。既然button不能强制结束应用程序,但是可以关闭本窗口啊!
通过button关闭本窗口,然后触发窗口的Close事件,通过Close响应事件来调用ApplicationExit(),达到退出应用程序的目的。
#include<stdioh>
#include <stdlibh>
void main()
{
int i=0;
printf("1执行1 *** 作\n2执行2 *** 作\n3退出\n");
printf("请输入你所需的 *** 作\n");
scanf("%d",&i);
switch(i)
{
case 1:printf("1 *** 作");break;
case 2:printf("2 *** 作");break;
case 3:system("exit");break;
default:break;
}
system("pause");
}
在一个死循环中,不使用return、break的情况下,强制退出程序。
#python #结束进程 #多线程
Python入门题039:退出程序(5种方法)
代码1:
代码2:
代码3:
ACCESS
VBA里有两种方法可以实现退出Access应用程序。
方法一
使用Application对象的Quit方法
例句:
Private Sub Command1_Click()
ApplicationQuit acQuitPrompt
End Sub
代码中的“退出选项
”
acQuitPrompt
是可选参数,显示一个对话框,询问用户是否要保存已更改但尚未保存的任何数据库对象。
还有另外两种选项,分别是:
acQuitSaveAll
默认 保存所有对象,而不显示对话;
acQuitSaveNone
退出
Microsoft
Access
而不保存任何对象。
如果不指定“退出选项
”,例如 ApplicationQuit
则系统默认选择 acQuitSaveAll,它不会d出询问框,建议使用这个默认选项。
方法二
使用DoCmd对象的Quit方法
例句:
Private Sub Command2_Click()
DoCmdQuit acQuitPrompt
End Sub
代码中的“退出选项
”
acQuitPrompt
是可选参数,显示一个对话框,询问用户是否要保存已更改但尚未保存的任何数据库对象。
还有另外两种选项,分别是:
acQuitSaveAll
默认 保存所有对象,而不显示对话;
acQuitSaveNone
退出
Microsoft
Access
而不保存任何对象。
如果不指定“退出选项
”,例如 DoCmdQuit
则系统默认选择 acQuitSaveAll,它不会d出询问框,建议使用这个默认选项。
说明:添加
DoCmd
对象的
Quit
方法是为了提供在
Microsoft
Access
for
Windows
95
的
Visual
Basic
代码中执行
Quit
*** 作的后向兼容性。微软推荐使用
Application
对象的
Quit
方法来代替。
以上就是关于VB6.0 去掉窗体边框后,没有了关闭按钮,生成可执行程序后,如何能退出程序呢,请给出代码。全部的内容,包括:VB6.0 去掉窗体边框后,没有了关闭按钮,生成可执行程序后,如何能退出程序呢,请给出代码。、C#中 怎么实现单击关闭按钮退出程序、C语言如何通过代码使程序退出等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)