社区
Delphi
帖子详情
如何在Delphi中,实现如下功能
Ninputer
2001-10-08 04:30:34
按最小化按钮之后缩到任务栏的Sys Tray中,双击图标后,恢复原状?
关键是如何双击恢复原状,试过很多方法都不能实现
...全文
124
9
打赏
收藏
如何在Delphi中,实现如下功能
按最小化按钮之后缩到任务栏的Sys Tray中,双击图标后,恢复原状? 关键是如何双击恢复原状,试过很多方法都不能实现
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
9 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
Ninputer
2001-10-12
打赏
举报
回复
给分!
csdn72
2001-10-08
打赏
举报
回复
参考下面代码:
type
TForm1 = class(TForm)
private
procedure WMSysCommand(var Message: TMessage); message WM_SYSCOMMAND;
procedure WMBarIcon(var Message:TMessage);message WM_BARICON;
procedure TForm1.WMSysCommand(var Message:TMessage);
var
lpData:PNotifyIconData;
begin
if Message.WParam = SC_ICON then
begin //如果用户最小化窗口则将窗口 隐藏并在任务栏上添加图标
lpData := new(PNotifyIconDataA);
lpData.cbSize := 88; //SizeOf(PNotifyIconDataA);
lpData.Wnd := Form1.Handle;
lpData.hIcon := Form1.Icon.Handle;
lpData.uCallbackMessage := WM_BARICON;
lpData.uID :=0;
lpData.szTip := 'Samples';
lpData.uFlags := NIF_ICON or NIF_MESSAGE or NIF_TIP;
Shell_NotifyIcon(NIM_ADD,lpData);
dispose(lpData);
Form1.Visible := False;
end
else
begin //如果是其它的SystemCommand消息则调用系统缺省处理函数处理之。
DefWindowProc(Form1.Handle,Message.Msg,Message.WParam,Message.LParam);
end;
end;
procedure TForm1.WMBarIcon(var Message:TMessage);
var
lpData:PNotifyIconData;
begin
if (Message.LParam = WM_LBUTTONDOWN) then //把 WM_LBUTTONDOWN 改为双击的值就可以了,帮助里有,我忘了
begin //如果用户点击任务栏图标则将图标删除并回复窗口。
lpData := new(PNotifyIconDataA);
lpData.cbSize := 88;//SizeOf(PNotifyIconDataA);
lpData.Wnd := Form1.Handle;
lpData.hIcon := Form1.Icon.Handle;
lpData.uCallbackMessage := WM_BARICON;
lpData.uID :=0;
lpData.szTip := 'Samples';
lpData.uFlags := NIF_ICON or NIF_MESSAGE or NIF_TIP;
Shell_NotifyIcon(NIM_DELETE,lpData);
dispose(lpData);
Form1.Visible := True;
end;
end;
能完成你所要求的功能
Ninputer
2001-10-08
打赏
举报
回复
哎,在网上搜索很久,也没找到。先谢了,不过有恢复后的窗体无法最小化的毛病
是怎么回事
cobi
2001-10-08
打赏
举报
回复
我这里有个notifyicon的pas,加入到工程中即可实现托盘功能,给个email吧
CrzWind
2001-10-08
打赏
举报
回复
这种东西到处都是呀,上面说的地址就可以找到哇,RX控件组里面也有这样的东西哦
别忘了加分哦
powerlee
2001-10-08
打赏
举报
回复
RXLIB里边有个TrayIcon控件封装了双击事件
Nicky_he
2001-10-08
打赏
举报
回复
建议看看控件的源代码,这样效果比较好
sundayboys
2001-10-08
打赏
举报
回复
建议你用一个Cooltrayicon的控键,在ONDClick事件中写,MainForm。show,至于trayicon要不要随便你了,那个控件可以到http://www.torry.net/vcl/system/trayicons/trayicon.zip下载到。
cobi
2001-10-08
打赏
举报
回复
试一下使用trayicon控件,应当可以帮你解决问题
java源码包---java 源码 大量 实例
在有状态SessionBean
中
,用累加器,以对话状态存储起来,创建EJB对象,并将当前的计数器初始化,调用每一个EJB对象的count()方法,保证Bean正常被激活和钝化,EJB对象是用完毕,从内存
中
清除…… Java Socket 聊天...
在
Delphi
7
中
实现
停靠
功能
在
Delphi
7
中
实现
停靠
功能
我们在使用
Delphi
7开发应用系统过程
中
经常需要使用子窗口在主窗口上停靠的
功能
,如果对这一部分不熟练时,通常会到CSDN等网站寻找各种相关的控件,或者参考
Delphi
自带的例程Docking,下面我...
如何在
Delphi
中
实现
C语言
中
静态变量的
功能
如何在
Delphi
中
实现
C语言
中
静态变量的
功能
DELPHI
编程2007-09-02 14:56:01阅读28评论0 字号:大
中
小 订阅 如何在
Delphi
中
实现
C语言
中
静态变量的
功能
在函数(function)或过程(procedure...
DELPHI
实现
PING
功能
升级版
通过以上的方式完美解决了Windows7系统在没有管理员权限的情况下,也能
实现
Ping
功能
问题,以上与大家共享。//需要引用WinSock单元。
在
Delphi
中
编程
实现
中
文输入的
功能
Delphi
被称为第四代编程语言,它具有简单、高效、
功能
强大的特点,它一直为广大程序设计员所青睐。 一、背景介绍 大家在使用计算机操作的时候,一般情况下输入
中
文似乎就是一件不可避免的事情了。不同的...
Delphi
5,928
社区成员
262,931
社区内容
发帖
与我相关
我的任务
Delphi
Delphi 开发及应用
复制链接
扫一扫
分享
社区描述
Delphi 开发及应用
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章