首页 > 编程语言 >delphi关闭程序

delphi关闭程序

时间:2024-02-06 15:44:31浏览次数:19  
标签:程序 delphi Terminate 关闭程序 Application 窗体 close Close

Close

1.只关闭本窗体
2.当Close是一个主窗体时,程序会退出。
3.Close会发生FormClose事件,FormCloseQuery事件,触发OnClose事件;
4.主窗体close以后程序就Application.Terminate了
5.子窗体close以后。没释放,还可以Show出来。
6.也是说主窗口的Close方法其实也是调用Application的Terminate来终止程序的。

Halt

Halt会发生FormDestory事件,用于强行终止应用程序的执行,属于非正常方式退出;

Application.Terminate

Application.Terminate不会触发以上三个事件,Application.Terminate就是程序结束了。整个程序结束运行,系统强行收回系统资源,当主窗口关闭时或WM_QUIT消息触发时,Terminate自动被调用;

close只是针对窗体。主窗体close以后程序就Application.Terminate了。
子窗体close以后。没释放,还可以Show出来。
也是说主窗口的Close方法其实也是调用Application的Terminate来终止程序的
Application.Close是正常退出,有应用程序主动交还系统资源
另外有一个区别,主窗口的Close方法可以触发OnClose事件
而Application.Terminate并不会触发该事件.

ExitProcess(0):
1.直接干净的终止程序。

 

标签:程序,delphi,Terminate,关闭程序,Application,窗体,close,Close
From: https://www.cnblogs.com/llj202310181731/p/18009162

相关文章

  • delphi GUID相关操作
    GUID相关操作代码procedureTForm1.Button1Click(Sender:TObject);varGUID1,GUID2:TGUID;begin//创建GUIDifCreateGUID(GUID1)<>0thenMemo1.Lines.Add('创建失败');//转换为字符串Memo1.Lines.Add(GUIDToString(GUID1));//分段输出Memo1.Li......
  • delphi 里 多用TArray 而不是 array of
    今天写代码发现个bug,是delphi编译器核心层面的:unitddx.att;interfaceusesSystem.Generics.Collections,System.Rtti;typexstring=string;InstanceName=class(TCustomAttribute)privateFvalue:arrayofstring;publicconstructorCreate(......
  • delphi TThread.WaitFor 用法
    在Delphi中,TThread.WaitFor方法用于等待一个线程完成执行。当你创建一个线程并希望主线程(或其他线程)等待这个线程结束时,你可以使用这个方法。以下是TThread.WaitFor方法的基本用法:创建一个线程类:首先,你需要从TThread派生一个类,并重写其Execute方法。这个方法是你线程......
  • delphi中的Format、FormatDateTime函数详解(转)
    Format是一个很常用,却又似乎很烦的方法,本人试图对这个方法的帮助进行一些翻译,让它有一个完整的概貌,以供大家查询之用:首先看它的声明:functionFormat(constFormat:string;constArgs:arrayofconst):string;overload;事实上Format方法有两个种形式,另外一种是三个参数的,......
  • delphi 增加32位应用程序内存地址空间,解决“Out of memory”问题
    增加32位应用程序内存地址空间,解决“Outofmemory”问题使32位应用程序能够在64位Windows访问最大4GB内存空间在应用程序的.dpr文件中添加编译指令{$SetPEFlagsIMAGE_FILE_LARGE_ADDRESS_AWARE}。usesWinapi.Windows;{$SETPEFLAGSIMAGE_FILE_LARGE_ADDRESS_AWARE......
  • DELPHI估算指南
    ......
  • Delphi Animation
     AnimateFloat是Delphi中用于创建简单动画效果的一个函数,它可以让你平滑地改变控件的属性值,例如位置、大小、透明度等。通过指定起始值和目标值,以及动画持续时间,AnimateFloat函数可以实现属性值的过渡动画效果。下面是AnimateFloat函数的语法:procedureAnimateFloat(co......
  • Delphi中 调试 指针
             p1.Free;释放堆中数据,最终无内存泄漏,只是加深记忆;有些时候灵活应对;......
  • delphi firemonkey使用 TListView 自定义列表数据
    设计界面如下把ListView的Item的Appearance为DynamicAppearance,并且把Item改为高度100添加Item代码procedureTForm1.Button1Click(Sender:TObject);varimg:TListItemImage;text1,text2,text3:TListItemText;beginvaritem:=ListView1.Items.Add;text......
  • Delphi 修改单元名称
    我经常让GPT写一些简单的代码,它确实也能给出相对满意的结果,但是这单元的名称总是和我的不一样 我们在delphi中新建新项目名称一般都是Unit1,所以我们首先要先把Unit1修改成与GPT一样的名称才可以.首先是保存我们的新项目,然后关闭.当然里面是空白的,什么代码和控件都没加.......