一个简单的系统托盘程序
2010-12-28 11:22
507 查看
Delphi System Tray Application,版本高于D7时设置Application.ShowMainForm := False;在隐藏的时候,任务栏不显示。
代码
代码
unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, ShellAPI, AppEvnts; const WM_ICONTRAY = WM_USER + 100; type TForm1 = class(TForm) procedure FormCreate(Sender: TObject); procedure FormDestroy(Sender: TObject); private { Private declarations } TrayIconData: TNotifyIConData; public { Public declarations } procedure TrayMessage(var aMsg:TMessage);message WM_ICONTRAY; end; var Form1: TForm1; implementation {$R *.dfm} procedure TForm1.FormCreate(Sender: TObject); begin with TrayIconData do begin cbSize := SizeOf(TrayIconData); wnd := Self.Handle; uID := 0; uFlags := NIF_MESSAGE + NIF_ICON + NIF_TIP; uCallbackMessage := WM_ICONTRAY; hIcon := Application.Icon.Handle; //LoadIcon(HInstance,'newIcon'); 加载自己的Icon StrPCopy(szTip,Application.Title); end; Shell_NotifyIcon(NIM_ADD,@TrayIconData); end; procedure TForm1.FormDestroy(Sender: TObject); begin Shell_NotifyIcon(NIM_DELETE,@TrayICONData); end; procedure TForm1.TrayMessage(var aMsg: TMessage); begin case aMsg.LParam of WM_LBUTTONDOWN: begin ShowMessage('Left button clicked - let''s SHOW the Form!'); Application.MainForm.Show; end; WM_RBUTTONDOWN: begin ShowMessage('Right button clicked - let''s HIDE the Form!'); Application.MainForm.Hide; end; end; end; end.
相关文章推荐
- 对程序添加系统托盘图标支持-一个简单的C++封装
- 一个简单控件的编写--系统托盘
- 一个简单的C#托盘程序(本站原创)
- 【1】实现一个简单的linux系统引导程序
- 今天做了一个系统托盘的小程序
- 通过一个简单的时间片轮转多道程序内核代码,分析linux操作系统系统
- 深入理解计算机系统读书笔记之一个简单汇编程序的调试分析
- 生成一个系统托盘程序
- 一个基于PXA255嵌入式系统的简单24位图片读取输出程序
- MFC 为程序制作一个系统托盘图标、显示隐藏任务栏图标
- 一个简单的统计学分系统的小程序
- 一个系统引导程序的简单示例1
- wxpython实现程序最小到系统托盘的一个实例
- 基于atmel mega88编写了一个简单的时间触发系统单片机框架程序
- 一个系统引导程序的简单示例1
- 程序员简单打造一个灵活智能的自动化运维系统C#实例程序
- 详解:Windows系统安装OpenSSL 以及在VC环境下编写一个简单OpenSSL程序
- 一个带系统托盘的VC++程序编写方法
- 从系统Demo中改的一个 托盘图标带窗体的系统服务程序
- 使用NetBeans5.0开发一个简单的网站程序