delphi 怎么实现主窗口退出时,有一个提示框?
无论点窗口上的【按钮】还是【右上角的叉】,能出现一个提示窗口,“是”-退出窗口,“否”-重新登录(调出登录窗口),“取消”-返回。
MessageBox能实现吗?还是要调用新窗口(我调用窗口,有些错误)?
如图一样。 有谁能给代码?谢谢了
热心网友:你好,我用你的代码,已经好了。但用在 procedure TMainForm.ToolButton8Click(Sender: TObject); 中“是”要点两下主窗口才关闭,是什么原因?

你可以在窗体的onClose事件中进行设计。
在里面先以定义一个退出标志,然后根据标志判断是否退出。
procedure TFrm_mz_sf_zdhj.FormClose(Sender: TObject; var Action: TCloseAction);
var ExitFlag:Integer;//退出标志
begin
ExitFlag:=Application.MessageBox('当前记录尚未保存,确认退出吗?','警告',Mb_YesNo) ;
If ExitFlag=7 then//不退出
Begin
//TCloseAction = (caNone, caHide, caFree, caMinimize);
Action:=caNone;
Exit;
end
else
Begin
self.close;//退出
End;
end;
在窗口的OnCloseQuery里写下面的代码:
procedure TForm1.FormCloseQuery(Sender: TObject; var CanClose: Boolean);
begin
case Application.MessageBox('确定退出系统?','询问',35) of
6:
begin
ShowMessage('按了是,窗口关闭');
CanClose:=True;
end;
7:
begin
ShowMessage('按了否,返回登陆窗口');
CanClose:=True;
//这里写上你的登陆窗口调用代码
ShowMessage('登陆窗口出现了');
end;
2:
begin
ShowMessage('按了取消,窗口不关闭');
CanClose:=False;
end;
end;
end;
delphi 怎么实现主窗口退出时,有一个提示框?的更多相关文章
- WPF 主窗口关闭时结束所有相关线程
程序主窗口的 Closed 事件中添加代码: Process.GetCurrentProcess().Kill();
- 关于winform窗体关闭时弹出提示框,选择否时窗体也关闭的问题
在窗体中有FormClosing这个事件,这个事件是在窗体关闭时候运行的.如果要取消某个事件的操作,那么就在该事件中写上e.Cancel=true就能取消该事件,也就是不执行该事件.所以,你要在窗体关 ...
- 【2016-11-6】【坚持学习】【Day21】【主窗口关闭时,同步关闭它的子窗口】
本来想用委托实现的.但是又觉得没有必要. 方法如下: public MainWindow() { InitializeComponent(); this.Closing += MainWindow_C ...
- winform程序关闭界面时弹出提示框
void Form1_FormClosing(object sender, FormClosingEventArgs e){ if (MessageBox.Show( "窗口关闭后,数据即将 ...
- c# web 删除时弹出提示框
方法1: 在控件中增加属性 <asp:Button ID="btnSub" runat="server" Text="提交" oncl ...
- listview 没数据内容时显示一个提示文本
listview和textview 1:1.listview无内容的时候本身是不显示的,所以textview会显示 getlistview获取系统定义的listview
- 开发ArcEngine时的一个提示,无效位图,无法在类“***”中找到资源“***.bmp”
解决办法:文件属性-生成操作 修改为 :嵌入式资源.
- Qt窗口退出与事件循环退出的问题
我在Qt主程序中开启一个线程,线程中使用信号-槽来产生QMainWindow(GUI),main函数代码如下:int main(int argc, char *argv[]){ QApplicatio ...
- QT:窗口最小化时显示一个小浮标
有些窗口在自身最小化时要在桌面上显示一个小浮标,让用户利用这个小浮标进行各种操作(例如迅雷的悬浮窗一样),我试着用QT实现一下这个功能. PS:本来以为这个功能很简单,却搞了我两个晚上,泪奔... 思 ...
随机推荐
- 008_python内置语法
一. 参考:http://www.runoob.com/python/python-built-in-functions.html (1)vars() 描述 vars() 函数返回对象object的属 ...
- yaml的简单学习
参考http://www.ruanyifeng.com/blog/2016/07/yaml.html 基本语法规则如下. • 大小写敏感 • 使用缩进表示层级关系 • ...
- 【转】从零开始玩转logback
概述 LogBack是一个日志框架,它与Log4j可以说是同出一源,都出自Ceki Gülcü之手.(log4j的原型是早前由Ceki Gülcü贡献给Apache基金会的)下载地址:http://l ...
- Java多线程(二)——常用的实现多线程的两种方式
一.继承Thread类创建线程类 Java使用Thread类代表线程,所有的线程对象都必须是Thread类或其子类的实例.每个线程的作用是完成一定的任务,实际上就是执行一段程序流即一段顺序执行的代码. ...
- mac sourcetree push分支选中所有tag的时候报错
错误信息: ....... ! [rejected] 573_0811_stable -> 573_0811_stable (already exists)updating local trac ...
- STM32中断优先级彻底讲解
一.综述 STM32 目前支持的中断共为 84 个(16 个内核+68 个外部), 16 级可编程中断优先级的设置(仅使用中断优先级设置 8bit 中的高 4 位)和16个抢占优先级(因为抢 ...
- Docker存储卷(V18.X)
简介 介绍 Docker的存储卷称之为volume,本质上容器上的一个或者多个目录,而这些目录绕过了联合文件系统,与宿主机中的目录或者其他容器目录进行了绑定关系,这种绑定关系可以看作Linux的mou ...
- 狄利克雷卷积&莫比乌斯反演总结
狄利克雷卷积&莫比乌斯反演总结 Prepare 1.\([P]\)表示当\(P\)为真时\([P]\)为\(1\),否则为\(0\). 2.\(a|b\)指\(b\)被\(a\)整除. 3.一 ...
- android截屏
截屏是一个常用的操作,经常会有这种需求. 截屏的工具类 package com.fxb.screenshot; import android.app.Activity; import android. ...
- 微信小程序支付异常:requestPayment:fail no permission
今天在调试微信小程序支付时碰到了这个问题,支付参数都正常生成了,在调用 wx.requestPayment 进行支付时遇到了这个报错,查了一下发现是开发者工具中 AppID 写错了,用的 AppID ...