Текущий архив: 2003.05.19;
Скачать: CL | DM;
ВнизКак свернуть прогу в трей? Найти похожие ветки
← →
Dimonich (2003-03-17 18:32) [0]ну типа чтоб по закрытии, форма сворачивалась в трей...
← →
Dona (2003-03-17 18:43) [1]http://delphi.mastak.ru/cgi-bin/forum.pl?look=1&id=1047915027&n=3
← →
Intell (2003-03-17 20:18) [2]Удалено модератором
Примечание: Offtopic
← →
Юрий Зотов (2003-03-17 22:00) [3]unit Unit1;
interface
uses
Windows, Messages, ShellAPI, SysUtils, Classes, Controls, Forms, Menus;
type
TTrayForm = class(TForm)
TrayPopupMenu: TPopupMenu;
MenuItemShow: TMenuItem;
MenuItemExit: TMenuItem;
procedure FormCreate(Sender: TObject);
procedure MenuItemShowClick(Sender: TObject);
procedure MenuItemExitClick(Sender: TObject);
procedure FormDestroy(Sender: TObject);
private
FIconData: TNotifyIconData;
procedure WMUser(var Message: TMessage); message WM_USER;
procedure WMSysCommand(var Message: TWMSysCommand); message WM_SYSCOMMAND;
end;
var
TrayForm: TTrayForm;
implementation
{$R *.DFM}
procedure TTrayForm.FormCreate(Sender: TObject);
begin
with Application, FIconData do
begin
ShowMainForm := False;
SetWindowLong(Handle, GWL_EXSTYLE, GetWindowLong(Handle, GWL_EXSTYLE) or WS_EX_TOOLWINDOW);
cbSize := SizeOf(FIconData);
Wnd := Self.Handle;
uID := 100;
uFlags := NIF_MESSAGE or NIF_ICON or NIF_TIP;
uCallbackMessage := WM_USER;
hIcon := Icon.Handle;
StrPCopy(szTip, Title)
end;
Shell_NotifyIcon(NIM_ADD, @FIconData)
end;
procedure TTrayForm.MenuItemShowClick(Sender: TObject);
begin
Show;
MenuItemShow.Enabled := False
end;
procedure TTrayForm.MenuItemExitClick(Sender: TObject);
begin
Close
end;
procedure TTrayForm.WMSysCommand(var Message: TWMSysCommand);
begin
if Message.CmdType and $FFF0 = SC_MINIMIZE then
begin
Hide;
MenuItemShow.Enabled := True
end
else inherited
end;
procedure TTrayForm.WMUser(var Message: TMessage);
var
P: TPoint;
begin
if Message.LParam = WM_RBUTTONDOWN then
begin
GetCursorPos(P);
SetForegroundWindow(Handle);
TrayPopupMenu.Popup(P.X, P.Y);
PostMessage(Handle, WM_NULL, 0, 0)
end
end;
procedure TTrayForm.FormDestroy(Sender: TObject);
begin
Shell_NotifyIcon(NIM_DELETE, @FIconData)
end;
end.
← →
vidiv (2003-03-19 06:03) [4]Удалено модератором
Примечание: Offtopic
← →
Elected (2003-03-19 09:29) [5]Удалено модератором
Примечание: Offtopic
Страницы: 1 вся ветка
Текущий архив: 2003.05.19;
Скачать: CL | DM;
Память: 0.45 MB
Время: 0.006 c