老话题---托盘程序的消息
我做了个托盘程序.但是不知怎么不相应消息.我有鼠标点击托盘图标时没有相应.
请高手帮帮我!!!
const WM_Icon=WM_USER + 100;
implementation
var IconData:TNotifyIconData;
procedure TFrmMain.Mini(Sender:TObject); //最小化要处理的事件
begin
Application.Initialize;
Hide;
end;
procedure TFrmMain.IconMessage(var MsgIcon:TMessage); //消息事件
var PMouse:TPoint;
begin
if MsgIcon.Msg = WM_Icon then
begin
case MsgIcon.LParam of
WM_RButtonDown:
begin
SetForegroundWindow(Handle);
GetCursorPos(PMouse);
PopMIcon.Popup(PMouse.X,PMouse.Y);
end;
end;
show;
end
else
inherited;
end;
procedure TFrmMain.FormCreate(Sender: TObject);
begin
SendMessage(ListBDeliver.Handle,LB_SETHORIZONTALEXTENT, 1300, 0);
SendMessage(ListBStatus.Handle,LB_SETHORIZONTALEXTENT, 1300, 0);
IconData.cbSize:=SizeOf(IconData);
IconData.Wnd:=Application.Handle;
IconData.uID:=1000;
IconData.uFlags:=NIF_MESSAGE or NIF_ICON or NIF_TIP;
IconData.uCallbackMessage:=WM_Icon;
IconData.hIcon:=Application.Icon.Handle;
IconData.szTip:='迅捷短信单机版';
Shell_NotifyIcon(NIM_ADD,@IconData);
Application.OnMinimize:=FrmMain.Mini; //最小化时要处理的事件
end;