请问:如何把应用程序的图标点击最小化时,放在WINDOWS桌面右下角的任务栏上,

谁有:TRxtrayIcon控件,拜托!!!!
2025-03-30 17:17:49
推荐回答(1个)
回答(1):

拦截系统窗体发出的最小化消息,在右下角显示图标procedure TControlE.ShowNotifyIcon(var ShowIconMsg:TWMSysCommand);var Icon:TIcon;begin if ShowIconMsg.CmdType=SC_MINIMIZE //如果是最小化消息 then begin Icon:=TIcon.Create; //Icon变量用来装入任务栏图标 Icon.LoadFromFile('放图标的位置'); new(pTaskBarIcon); with pTaskBarIcon^ do //给pTaskBarIcon赋值 begin cbSize:=sizeof(TNotifyIconData); Wnd:=ControlE.WindowHandle; uID:=0; uFlags:=NIF_ICON or NIF_MESSAGE or NIF_TIP; uCallbackMessage:=WM_USER; //当在任务栏图标上发生鼠标事件时, // 向Windows发送标准消息WM_USER hIcon:=Icon.Handle; StrCopy(szTip,'酷音酷放'); end; Shell_NotifyIcon(NIM_ADD,pTaskBarIcon); //给通知域添加图标 ControlE.Visible:=false; //使音乐播放器窗口不可见 end else //如果不是最小化消息 inherited; //将继承Windows处理WM_SYSCOMMAND时的方法 end;还原过程:自己加上鼠标双击事件 ControlE.Visible:=True; //恢复音乐播放器窗口 Shell_NotifyIcon(NIM_DELETE,pTaskBarIcon); //删除任务栏图标 dispose(pTaskBarIcon); //释放pTaskBarIcon这是我自己在做一个多媒体播放器的时候用的方法,自己完善一下就可以了! 查看原帖>>

希望采纳