[Back to DELPHI SWAG index] [Back to Main SWAG index] [Original]
From: "Neil Clayton" <100101.602@compuserve.com>
Rainer Perl <Rainer.Perl@iddc.via.at> wrote in article
> I have a question to the Shell_NotifyIcon function:
> I can add an icon to the taskbar
> I can modify an icon
> I can delete an icon.
> What I can't do: I can't receive Messages from the Icon!!
To receive messages you must add the NIF_MESSAGE flag to your notify structure and tell it what message to send and to which window. This is the code that I use:
--------------------------------------------------------------------------------
procedure TMainForm.UpdateTaskBar; // update the win95 taskbar icon area
var
NotifyData: TNotifyIconData;
begin
With NotifyData do // set up the data structure
begin
cbSize := SizeOf(TNotifyIconData);
Wnd := MyForm.Handle;
uID := 0;
uFlags := NIF_ICON or NIF_MESSAGE or NIF_TIP; // ... the aspects to modify ...
uCallbackMessage := WM_MY_MESSAGE; // ... the message to send back to us ...
hIcon := hMyIcon;
szTip := 'Tool Tip To Display'; // ... and the tool tip
end;
Shell_NotifyIcon(dwMessage, @NotifyData); // now do the update
end;
--------------------------------------------------------------------------------
WM_MYMESSAGE is a user defined message. Usually defined as:
--------------------------------------------------------------------------------
const
WM_MYMESSAGE = WM_USER + <some number - can be zero>;
[Back to DELPHI SWAG index] [Back to Main SWAG index] [Original]