如何在状态栏中加入图标,图片,还有动态的时间
【打印文章】
function Shell_NotifyIcon(dwMessage:DWORD;lpData:PNotifyIconData):BOOL;stdcall;
在shellapi单元中。
dwMessage:NIM_ADD
NIM_MODIFY
NIM_DELETE
PNotifyIconData=^TNotifyIconDataA
TNotifyIconDataA=record
cbSize:DWORD;
Wnd:HWND;
uID:UINT;
uFlags:UINT;
uCallbackMessage:UINT;
hIcon:HICON;
szTip:array[0..63] of AnsiChar;
end;
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
...
const
MyIconID=1;
MyIconEvent=WM_USER+1;
...
private
...
MyIcon:TIcon;
...
//Install
var
IconData:TNotifyIcon;
...
MyIcon:=TIcon.Create;
MyIcon.LoadFromFile('icon1.ico');
with IconData do
begin
cbSize:=SizeOf(IconData); //
Wnd:=Form1.Handle; //
uID:=MyIconID; //
uFlags:=NIF_ICON;
uCallBackMessage:=MyIconEvent;
hIcon:=Handle; //Change
szTip:='My Test Icon';
Shell_NotifyIcon(NIM_ADD,@IconData);
...
//做了标记的是改或删时要设的。
//precedure IconOnClick(msg:TMessage);message MyIconEvent;
if(msg.lParam=WM_RBUTTONDOWN) then
GetCursorPos(p); //p:TPoint;
PopupMenu1.Popup(p.x,p.y);
在shellapi单元中。
dwMessage:NIM_ADD
NIM_MODIFY
NIM_DELETE
PNotifyIconData=^TNotifyIconDataA
TNotifyIconDataA=record
cbSize:DWORD;
Wnd:HWND;
uID:UINT;
uFlags:UINT;
uCallbackMessage:UINT;
hIcon:HICON;
szTip:array[0..63] of AnsiChar;
end;
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
...
const
MyIconID=1;
MyIconEvent=WM_USER+1;
...
private
...
MyIcon:TIcon;
...
//Install
var
IconData:TNotifyIcon;
...
MyIcon:=TIcon.Create;
MyIcon.LoadFromFile('icon1.ico');
with IconData do
begin
cbSize:=SizeOf(IconData); //
Wnd:=Form1.Handle; //
uID:=MyIconID; //
uFlags:=NIF_ICON;
uCallBackMessage:=MyIconEvent;
hIcon:=Handle; //Change
szTip:='My Test Icon';
Shell_NotifyIcon(NIM_ADD,@IconData);
...
//做了标记的是改或删时要设的。
//precedure IconOnClick(msg:TMessage);message MyIconEvent;
if(msg.lParam=WM_RBUTTONDOWN) then
GetCursorPos(p); //p:TPoint;
PopupMenu1.Popup(p.x,p.y);
本栏文章均来自于互联网,版权归原作者和各发布网站所有,本站收集这些文章仅供学习参考之用。任何人都不能将这些文章用于商业或者其他目的。( Pfan.cn )
【编程爱好者论坛】