Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.12.12;
Скачать: CL | DM;

Вниз

Работа в фоновом режиме   Найти похожие ветки 

 
zuber   (2002-11-30 03:14) [0]

Help!!! Как сделать, что бы программа запускалась в фоновом режиме или в сис. трее?


 
Сергей Бушин ©   (2002-11-30 05:36) [1]

смотри CoolTray или почитай книги пи статьи на эту тему.


 
Дмитрий К.К. ©   (2002-11-30 08:36) [2]

Изучи класс TNotifyIconData


 
Юрий Зотов ©   (2002-11-30 09:53) [3]

Снова и снова...

Вот полный пример. Программа запускается сразу в трее, при двойном щелчке по иконке появляется форма, при ее сворачивании программа снова "садится" в трей, а при закрытии завершается.

unit Unit1;

interface

uses
Windows, Messages, SysUtils, Classes, Forms, ShellAPI, Menus;

type
TForm1 = class(TForm)
procedure FormCreate(Sender: TObject);
private
FIconData: TNotifyIconData;
protected
procedure WndProc(var Message: TMessage); override;
end;

var
Form1: TForm1;

implementation

{$R *.DFM}

const
UM_TRAY = WM_USER + 1;

{ TForm1 }

procedure TForm1.FormCreate(Sender: TObject);
begin
with FIconData do
begin
cbSize := SizeOf(FIconData);
Wnd := Handle;
uID := 100;
uFlags := NIF_MESSAGE or NIF_ICON or NIF_TIP;
uCallbackMessage := UM_TRAY;
hIcon := Application.Icon.Handle;
StrPCopy(szTip, Application.Title)
end;
Application.ShowMainForm := False;
Shell_NotifyIcon(NIM_ADD, @FIconData)
end;

procedure TForm1.WndProc(var Message: TMessage);
begin
case Message.Msg of
WM_SYSCOMMAND:
if TWMSysCommand(Message).CmdType and $FFF0 = SC_MINIMIZE then
begin
Shell_NotifyIcon(NIM_ADD, @FIconData);
Application.MainForm.Visible := False
end
else inherited;
UM_TRAY:
if Message.LParam = WM_LBUTTONDBLCLK then
begin
Application.MainForm.Visible := True;
ShowWindow(Application.Handle, SW_HIDE);
Shell_NotifyIcon(NIM_DELETE, @FIconData)
end;
else inherited
end
end;

end.


 
zuber   (2002-12-03 21:47) [4]

Большое спасибо!!



Страницы: 1 вся ветка

Текущий архив: 2002.12.12;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.016 c
1-36197
TUZ_SS
2002-12-04 10:42
2002.12.12
Разница в днях


1-36253
MaXie
2002-11-28 12:40
2002.12.12
Темная лошадка Delphi5 - Закладка Servers!


14-36352
andrek
2002-11-20 11:53
2002.12.12
Желаю узнать ваше мнение


14-36358
Cobalt
2002-11-20 12:56
2002.12.12
Если хочешь добиться чего-либо от человека, то будь с ним


1-36238
SkyQuake
2002-11-30 13:56
2002.12.12
Как удалить отображённый в пямяти файл