...minimze the application visually to the tray (TNA) ?
Author: rlibby
function MinimizeToTray(Handle: HWND): Boolean;
var
hwndTray: HWND;
rcWindow: TRect;
rcTray: TRect;
begin
// Check passed window handle
if IsWindow(Handle) then
begin
// Get tray handle
hwndTray := FindWindowEx(FindWindow('Shell_TrayWnd', nil), 0, 'TrayNotifyWnd', nil);
// Check tray handle
if (hwndTray = 0) then
// Failure
Result := False
else
begin
// Get window rect and tray rect
GetWindowRect(Handle, rcWindow);
GetWindowRect(hwndTray, rcTray);
// Perform the animation
DrawAnimatedRects(Handle, IDANI_CAPTION, rcWindow, rcTray);
// Hide the window
ShowWindow(Handle, SW_HIDE);
end;
end
else
// Failure
Result := False;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
MinimizeToTray(Handle);
end;
printed from
www.swissdelphicenter.ch
developers knowledge base