delphi7做的程序, 在操作系统任务栏的程序图标上右键弹出菜单里选择“关闭”时,是触发什么事件???
我想做成这样的效果:在操作系统任务栏的程序图标上右键弹出菜单里选择“关闭”后,先弹出确认对话框,选择“是”:退出程序;选择“否”返回程序窗口。换个问法,我怎么在程序中判断...
我想做成这样的效果:在操作系统任务栏的程序图标上右键弹出菜单里选择“关闭”后,先弹出确认对话框,选择“是”:退出程序;选择“否”返回程序窗口。
换个问法,我怎么在程序中判断用户是否点击了我的程序在操作系统任务栏(不是我的程序的,而是操作系统的任务栏)图标的右键菜单里的“关闭”?
------------------------
我找到方法了,在程序主窗体的CloseQuery事件中加入选择性对话框就可以了:
procedure Tfmain.FormCloseQuery(Sender: TObject; var CanClose: Boolean);
begin
if application.MessageBox('你将退出本系统,请确认?','提示',mb_yesno+MB_ICONQUESTION )=idyes then
begin
//halt;
Application.Terminate;
end
else
begin
CanClose:=false;
end
end;
谢谢大家的回答,可能是我没表达清楚,我说的是操作系统任务栏中间那块区域里的程序图标的右建菜单里的关闭(即快捷启动栏和系统托盘区中间),不是托盘区。 展开
换个问法,我怎么在程序中判断用户是否点击了我的程序在操作系统任务栏(不是我的程序的,而是操作系统的任务栏)图标的右键菜单里的“关闭”?
------------------------
我找到方法了,在程序主窗体的CloseQuery事件中加入选择性对话框就可以了:
procedure Tfmain.FormCloseQuery(Sender: TObject; var CanClose: Boolean);
begin
if application.MessageBox('你将退出本系统,请确认?','提示',mb_yesno+MB_ICONQUESTION )=idyes then
begin
//halt;
Application.Terminate;
end
else
begin
CanClose:=false;
end
end;
谢谢大家的回答,可能是我没表达清楚,我说的是操作系统任务栏中间那块区域里的程序图标的右建菜单里的关闭(即快捷启动栏和系统托盘区中间),不是托盘区。 展开
4个回答
展开全部
不是我的程序的,而是操作系统的任务栏
这个是你的程序在任务栏通知区接到的消息,你需要自己处理你定义的这个消息。现在网上有现成的控件,直接加事件就可以。或者你也可以把Delphi2005以上自带的那个拿过去用也可以
这个是你的程序在任务栏通知区接到的消息,你需要自己处理你定义的这个消息。现在网上有现成的控件,直接加事件就可以。或者你也可以把Delphi2005以上自带的那个拿过去用也可以
追问
必须用控制吗?有没有例子
追答
可以不使用控件,但你要自己处理添加图标、图标通知、删除图标,这些都使用SHELL_NOTIFYICON这个函数来实现。
http://edu.codepub.com/2009/0608/5850.php
这里有个例子程序,你自己看下吧
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
可以关联右键菜单控件啊。。。貌似delphi本身也有托盘控件,自带的,里面就可以关联上POP什么的那个右键菜单控件,自写代码也可以
追问
换个问法,我怎么在程序中判断用户是否点击了我的程序在操作系统任务栏(不是我的程序的,而是操作系统的任务栏)图标的右键菜单里的“关闭”?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2011-06-02
展开全部
这些都是属于鼠标单击事件。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询