FormCloseQuery 关闭程序问题,帮忙看看。(50分)

  • 主题发起人 主题发起人 datm
  • 开始时间 开始时间
D

datm

Unregistered / Unconfirmed
GUEST, unregistred user!
在FormCloseQuery过程里,
1。用户点击了关闭按钮触发
2。关闭计算机时会触发
现在我想知道怎么判断?
比如:金山毒霸病毒防火墙,点击关闭时会弹出“是否退出”
而关闭计算机时,不会触发。
 
是不是考虑截获系统消息来实现呀
 
这个好象是系统强行关闭进程的吧!
 
但是在程序里怎么做到 ?
 
一般关闭:
; 1、formclosequery
; 2、formclose
; 3、formdestroy
系统关闭:
; 1、formclosequery
; 2、formdestroy
 
1.Form.OnClose事件:
; SelfClose:=True;//SelfClose为全局变量
2.Form.OnCloseQuery事件:
; if SelfClose then
; ; if .... then
; ; ; CanClose:=True
; ; else
; ; ; CanClose:=False;
 
截取系统事件 WM_QUERYENDSESSION,检测到事件时赋给一个变量某个值(如True),
在上述事件中检测此值是否为T即可。
 
后退
顶部