应用程序窗口最小化后,如何将图标设置在windows任务栏的右下角(100分)

  • 主题发起人 主题发起人 xlpan
  • 开始时间 开始时间
最简单的办法,用VCL:
比如<a href="ftp://202.120.100.49/VCL/new/TNotifyIcon.zip">TNotifyIcon.zip</a>By 南昌大学计算系 付昱纲
或者rxLib中的
 
检查你的Delphi D版光盘, 里面有一个TrayIcon.Zip的控件, 安装此控件, 然后放
到你的主Form上设置一下属性即可。
 
简单的话,直接使用TrayIcon.zip之类的控件。
或者调用Shell_NotifyIcon (uses ShellAPI)自己做相应处理。(这个问题在
论坛上应该有答案,你自己在“问题检索”里找NotifyIcon,应该能找到。
 
用控件最简单,也可用API
 
这问题问得都泛滥成灾了,看rxlib吧,不错的。
 
public
//托盘图标的返回消息
procedure MyIcoMesDo(var Msg : TMessage);Message MyIcoMes;


var PNotify:PNotifyIconDataA; //托盘图标结构

procedure Tform1.CreateIco();
begin
//建立“托盘”图标
New(PNotify);
PNotify^.Wnd:=f_main.Handle;
PNotify^.uID:=0;
PNotify^.uFlags:=NIF_ICON+NIF_MESSAGE+NIF_TIP;
PNotify^.hIcon:=f_main.Icon.Handle;
PNotify^.uCallbackMessage:=MyIcoMes; //返回的消息
PNotify^.szTip:='Hint提示';
Shell_NotifyIcon(NIM_ADD,PNotify);
end;


procedure Tform1.MyIcoMesDo(var Msg:TMessage);
begin
if Msg.LParam=WM_LBUTTONDBLCLK then
begin //双击图标
//自己的代码
end;


if (Msg.LParam=WM_RBUTTONUP) and f_main.Enabled then
begin //右键单击
//自己的代码
end;
end;


够清楚了吧!
 
xlpan:

这个问题已经很长时间没有人参加讨论,为保持版面
整洁,节约网友时间,请提问者采取必要处理措施。
关于本版管理细则,请参见<a href="http://www.gislab.ecnu.edu.cn/delphibbs/DispQ.asp?LID=111927">这个</a>问题。如两天
内提问者没有响应,我将采取强制措施。

如有管理建议,请到<a href="http://www.gislab.ecnu.edu.cn/delphibbs/DispQ.asp?LID=111927">这里</a>提出。谢谢!
 
多人接受答案了。
 

Similar threads

S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
D
回复
0
查看
836
DelphiTeacher的专栏
D
后退
顶部