Форум: "WinAPI";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.03.21;
Скачать: [xml.tar.bz2];




Вниз

Иконка в Systray 


dr0Ne64   (2002-01-24 01:07) [0]

Меня вот какой вопрос беспокоит:"как поместить иконку своей программы в Systray?"(Windows98)



Pat   (2002-01-24 01:22) [1]

Опять эпидемия началась :-))
Объяснять не буду, сам разберешься...да спать охота, а уже сегодня экзамен...

unit Unit1;

interface

uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
shellApi, StdCtrls, AppEvnts, Menus;

type
TForm1 = class(TForm)
ApplicationEvents1: TApplicationEvents;
PopupM: TPopupMenu;
N1: TMenuItem;
N2: TMenuItem;
N3: TMenuItem;
N4: TMenuItem;
procedure IconMouse(var Msg : TMessage);message WM_USER + 1;
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure FormCreate(Sender: TObject);
procedure FormDestroy(Sender: TObject);
procedure ApplicationEvents1Minimize(Sender: TObject);
procedure N1Click(Sender: TObject);
procedure N3Click(Sender: TObject);
procedure N4Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;

var
Form1: TForm1;

implementation

{$R *.DFM}
procedure TForm1.IconMouse(var Msg : TMessage);
var p:tpoint;
begin
getcursorpos(p);
case Msg.LParam of
WM_LBUTTONDBLCLK :
begin
ShowWindow(Application.Handle,SW_SHOW);
Application.Restore;
end;
WM_rbuttonup:
begin
SetForegroundWindow(Handle);
PopupM.Popup(P.X,P.Y);
PostMessage(Handle,WM_NULL,0,0)
end;
end;
end;

Procedure ic(a:boolean);
var nim:tnotifyicondata;
begin
with nim do
begin
cbSize:=sizeof(nim);
wnd:=form1.Handle;
uid:=1;
uFlags:=NIF_ICON or NIF_MESSAGE or NIF_TIP;
hicon:=Application.Icon.Handle;
uCallbackMessage:= wm_user+1;
szTip:="Tтю¦ ьрЄ№";
end;

if a then shell_notifyicon(nim_add,@nim) else
shell_notifyicon(nim_delete,@nim);
end;
procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
begin
action:=canone;
application.Minimize;
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
ic(true);
end;

procedure TForm1.FormDestroy(Sender: TObject);
begin
ic(false);
end;

procedure TForm1.ApplicationEvents1Minimize(Sender: TObject);
begin
showwindow(application.handle,0);
end;

procedure TForm1.N1Click(Sender: TObject);
begin
application.Terminate;
end;

procedure TForm1.N3Click(Sender: TObject);
begin
ShowWindow(Application.Handle,SW_SHOW);
Application.Restore;

end;

procedure TForm1.N4Click(Sender: TObject);
begin
application.Minimize;
end;

end.





Форум: "WinAPI";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.03.21;
Скачать: [xml.tar.bz2];




Наверх





Память: 0.72 MB
Время: 0.021 c
14-66995          MBo                   2002-02-08 09:21  2002.03.21  
Поздравляю с Днем Науки!


14-67005          Alex12                2002-02-08 15:24  2002.03.21  
Laptop или обычный PC?


14-66983          VuDZ                  2002-02-07 13:41  2002.03.21  
Системы Управления Параллельными Версиями


7-67032           VitalyU               2001-12-09 06:06  2002.03.21  
Com Port


1-66821           Sin                   2002-03-07 14:02  2002.03.21  
Получение из интернет странички и обработка ее к КОДЕ