OnCloseQuery事件:
if () then//条件
CanClose := false;
if () then//条件
CanClose := false;
解决方案 »
- dbgrideh 中lookup字段显示问题
- 请高手指教,有关结构问题
- ◆熟悉vb的朋友进来一下◆
- 我程序出毛病了,谁帮我看看,我给100分呀急死我了
- 如何在备份数据库文件前关掉SQL SEVERY,备份好以后再把SQL打开(在程序里解决,在线等,解决后就结帖)
- 菜鸟想学DELPHI,请前辈指点
- 请帮忙找工作
- 为什么我动态的创建一个报表 时会出现一undclared identifier:"Tqrlabel" 与 undclared identifier:"Tqrdbtext"的错误呢?
- 我想学Delphi 可我不知道从何开始,我的编程基础不是很好,希望大虾可以指点迷津
- 乱码文件里查找指定字符串的大难题。求大神~
- 关于VCL控件的送分题
- 紧急求救!我把能给的分都给了!帮帮我吧。
procedure TForm1.CloseBtnClick
begin
if ..........then Application.Terminate;
end;
如果是系统的生成的关闭按钮,则处理onclosequery
if Messagedlg('您真的要退出程序吗!',mtWarning,mbYesNoCancel,0)=mrCancel then CanClose:=false;
end;
所有条件判断都在OnCloseQuery中。
我一直都是这么做的,你可以试试,什么加不加分的,自家兄弟就无所谓了,哈哈……祝你好运。
procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
begin
if MessageDlg('是否保存修改结果',mtConfirmation,[mbYes, mbNo],0)=mryes then
begin
IF Edit1.text='' then // 如果用户名为空
BEGIN
showmessage('请输入用户名');
Edit1.SetFocus;
ABORT; //返回修改
EXIT;
END;
end;
end;
该说的楼上都说了,就在onclose事件中处理,不满足你条件的话,让action:=canone它就关闭不了了