Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2006.07.30;
Скачать: [xml.tar.bz2];

Вниз

Сворачивание программ в трей   Найти похожие ветки 

 
dommin   (2006-07-06 14:24) [0]

Как свернуть прогу в трей в Delphi 6?


 
PSPF2003 ©   (2006-07-06 14:48) [1]

Использовать компонент


 
Footballer ©   (2006-07-06 14:50) [2]

Заходишь на http://www.torry.net/ в Quick Search вводишь "CoolTrayIcon" и скачиваешь компонент для сворачивания проги в трей


 
Handle   (2006-07-06 16:33) [3]

ses
 Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
 Dialogs, Menus, ShellAPI;
const
WM_NOTIFYTRAYICON = WM_USER + 1;
type
 TForm1 = class(TForm)
   PopupMenu1: TPopupMenu;
   Exit: TMenuItem;
   ShowForm: TMenuItem;
   procedure FormCreate(Sender: TObject);
   procedure FormCloseQuery(Sender: TObject; var CanClose: Boolean);
   procedure FormDestroy(Sender: TObject);
   procedure ExitClick(Sender: TObject);
   procedure ShowFormClick(Sender: TObject);
   procedure FormShow(Sender: TObject);
 private
   procedure WMTRAYICONNOTIFY(var Msg: TMessage); message WM_NOTIFYTRAYICON;
   procedure OnMinimizeProc(Sender: TObject);
 public
   { Public declarations }
 end;

var
 Form1:    TForm1;
 MayClose: boolean=false;
implementation

{$R *.dfm}

procedure TForm1.OnMinimizeProc(Sender: TObject);
begin
 Form1.Close;
end;

procedure TForm1.WMTRAYICONNOTIFY(var Msg: TMessage);
begin
case Msg.LParam of
   WM_RBUTTONUP:
       begin
           SetForegroundWindow(Application.MainForm.Handle);
           PopupMenu1.Popup(Mouse.CursorPos.X , Mouse.CursorPos.Y );
       end;

   end;
end;

procedure TForm1.FormCreate(Sender: TObject);
var
   Tray: TNotifyIconData;
begin
   Application.OnMinimize:= OnMinimizeProc;

   with Tray do
       begin
           cbSize := SizeOf(TNotifyIconData);
           Wnd := Handle;
           uID := 1;
           uFlags := NIF_ICON or NIF_MESSAGE or NIF_TIP;
           uCallBackMessage := WM_NOTIFYTRAYICON;
           hIcon :=  Application.Icon.Handle;
           szTip := ("My Program");
       end;
           Shell_NotifyIcon(NIM_ADD, Addr(Tray));
end;

procedure TForm1.FormCloseQuery(Sender: TObject; var CanClose: Boolean);
begin
if MayClose = false then
begin
 CanClose:= false;
 MayClose:= true;
 Form1.Hide;
end
else
begin
 CanClose:= true;
end;
end;

procedure TForm1.FormDestroy(Sender: TObject);
var
   Tray: TNotifyIconData;
begin
   with Tray do
       begin
           cbSize := SizeOf(TNotifyIconData);
           Wnd := Handle;
           uID := 1;
       end;
           Shell_NotifyIcon(NIM_DELETE, Addr(Tray));
end;

procedure TForm1.ExitClick(Sender: TObject); //PopupMenu
begin
 MayClose:= true;
 Form1.Close;
end;

procedure TForm1.ShowFormClick(Sender: TObject); //PopupMenu
begin
 MayClose:= false;
 Form1.Show;
 Application.BringToFront;
end;

procedure TForm1.FormShow(Sender: TObject);
begin
 Application.Restore;
end;


 
Lamer@fools.ua ©   (2006-07-07 10:43) [4]

http://www.delphimaster.ru/cgi-bin/faq.pl?look=1&id=988624981&n=15


 
Desdechado ©   (2006-07-07 10:57) [5]

а что, в дельфи 6 есть трей?


 
PSPF2003 ©   (2006-07-07 11:09) [6]


> а что, в дельфи 6 есть трей?

Прочти вопрос еще раз


 
Desdechado ©   (2006-07-07 11:14) [7]

PSPF2003 ©   (07.07.06 11:09) [6]
чрезмерная серьёзность не украшает :)

я-то тоже смайл забыл поставить


 
PSPF2003 ©   (2006-07-07 11:16) [8]

Ладно за тебя и за себя :) :) :) :)


 
filh   (2006-07-10 13:42) [9]

RxLib



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

Форум: "Начинающим";
Текущий архив: 2006.07.30;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.47 MB
Время: 0.013 c
15-1150939130
vidiv
2006-06-22 05:18
2006.07.30
Высшее образование


15-1152085173
unknown
2006-07-05 11:39
2006.07.30
Delphi Roadmap


2-1152724757
Niko12
2006-07-12 21:19
2006.07.30
TEdit + image-background


15-1151299906
Ega23
2006-06-26 09:31
2006.07.30
С Днём рождения! 24 июня


2-1151582908
Id
2006-06-29 16:08
2006.07.30
KEY





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский