社区
Delphi
帖子详情
如何在Delphi中,实现如下功能
Ninputer
2001-10-08 04:30:34
按最小化按钮之后缩到任务栏的Sys Tray中,双击图标后,恢复原状?
关键是如何双击恢复原状,试过很多方法都不能实现
...全文
192
9
打赏
收藏
如何在Delphi中,实现如下功能
按最小化按钮之后缩到任务栏的Sys Tray中,双击图标后,恢复原状? 关键是如何双击恢复原状,试过很多方法都不能实现
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用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控件,应当可以帮你解决问题
Delphi
使用dxdbgrid
实现
分组统计的
功能
unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, ExtCtrls, SUIImagePanel, SUIGroupBox, dxExEdtr, DB, ADODB, SUIButton, dxCntner, d...
delphi
实现
DBGrid全选和反选
功能
delphi
实现
DBGrid全选和反选
功能
,可使用TPopupMenu在DBGrid里
实现
右键
功能
。
delphi
怎么
实现
全选的
功能
1. SelectAll可以
实现
全选
功能
Delphi
/Pascal code edit1.SelectAll; //
Delphi
/Pascal code RichEdit1.SelStart:=0; RichEdit1.SelectAll; 转载于:https://www.cnblogs.com/chuangyiyuan/p/6098494.html...
Delphi
实现
带有格式的Excel导出
功能
功能
预览 ## 运行预览 ## 代码
实现
//执行sql的函数 procedure TForm1.GetReportData(astrsql:string); var strSQL,err:string; i:integer; begin strSQL :='set QUOTED_IDENTIFIER...
delphi
的拖拽
功能
实现
惭愧,编了这么多年程序,还没用过拖拽
功能
这次同事要
实现
图标互换的
功能
,让我帮忙看一下,于是趁机研究了一下拖拽事件,发现还是比较简单的 参考了http://topic.csdn.net/u/20081015/14/98eef84c-0d2f-43a7-aa82-eef7028ef4f7.html里3150379的回答 要做以下事情: 1、放2个image控件(废话) 2、把要拖拽
Delphi
5,943
社区成员
262,942
社区内容
发帖
与我相关
我的任务
Delphi
Delphi 开发及应用
复制链接
扫一扫
分享
社区描述
Delphi 开发及应用
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章