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

Вниз

Панель задач.   Найти похожие ветки 

 
Scavenger ©   (2006-01-25 14:56) [0]

Уважаемые Мастера! Есть программа, как сделать так чтобы она работала в фоновом режиме, тобиш ее значок был на панели задач и сразу при загрузке компа она начинала работать?


 
azl ©   (2006-01-25 15:05) [1]

Помести ее в автозагрузку и будет тебе счасье:-)))


 
azl ©   (2006-01-25 15:05) [2]

Помести ее в автозагрузку и будет тебе счастье:-)))


 
Scavenger ©   (2006-01-25 15:52) [3]

Тут не совсем то, если я добавлю прогу в автозагрузку, то при загрузке вылезит окно проги. Мне этого не нужно. А вот как значок программы выставить на панель задачь там где часы. Мне нужно чтобы она работала в фоновом режиме наподобии как антивирусник.


 
DenXi ©   (2006-01-25 15:59) [4]

создай сконстанту сообщения const WM_TRYICON = WM_USER+123;
потом в private формы опиши :
   procedure CreateTryIcon (n: Integer; Tip: String);
   procedure DeleteTryIcon (n: Integer);
   procedure WMTryIcon(var Msg: TMsg); message WM_TRYICON;


последняя процедура обрабатывает сооьщения от иконки около часов

Здесь создаем иконку

procedure TfrmVillainy.CreateTryIcon (n: Integer; Tip: String);
var
 nidata: TNotifyIconData;
begin
 with nidata do
 begin
   cbSize:= SizeOf (TNotifyIconData);
   Wnd:= frmvillainy.Handle;
   uID:= n;
   uFlags:= NIF_ICON or NIF_MESSAGE or NIF_TIP;
   uCallBackMessage:= WM_TRYICON;
   hIcon:= Application.Icon.Handle;
   StrPCopy (szTip,Tip);
 end;
 Shell_NotifyIcon (NIM_ADD, @nidata);
end;


здесь мы ее удаляем
procedure TfrmVillainy.DeleteTryIcon (n: Integer);
var
 nidata: TNotifyIconData;
begin
 with nidata do
 begin
   cbSize:= SizeOf (TNotifyIconData);
   Wnd:= frmvillainy.Handle;
   uID:= n;
 end;
 Shell_NotifyIcon (NIM_DELETE, @nidata);
end;

procedure TfrmVillainy.WMTryIcon(var Msg: TMsg);
begin
 if (msg.wParam=515) and LRShift then
 begin
//делаем при нажатии на иконку
 end
end;


 
DenXi ©   (2006-01-25 16:03) [5]

только LRShift не нада.

А чтобы прога в автозагрузке висела............. для этого могу дать другой код, нада поискать


 
DenXi ©   (2006-01-25 16:07) [6]

дык вот....... при загрузке (или таме еще когда) манипулируй свойством Visible главной формы... Например, в WMTryIcon (процедуре обработки событий значка в трее) можно писать Visible:= true.... а при загрузке Visible:= false. Вот и все!


 
Scavenger ©   (2006-01-25 16:31) [7]

Спасибо за подсказку. Сейчас буду пробывать.


 
azl ©   (2006-01-25 16:59) [8]

Да какие проблемы?

Используй RxTrayIcon из Rx Library для того чтобы программа была в tray

WindowState := wsMinimized; - Программа будет стартовать свернутой.


 
Scavenger ©   (2006-01-25 17:03) [9]

В процедуре TfrmVillainy.CreateTryIcon кричит что не знает TNotifyIconData. Посмотрел по справке данный, тип, но не нашел. Дай описание пожалуйста.


 
azl ©   (2006-01-25 18:06) [10]

Скачай Rx Library

http://www.rxlib.ru/rx/rx_libr.htm

И будет тебе счастье


 
SergP.   (2006-01-25 18:29) [11]


> А вот как значок программы выставить на панель задачь там
> где часы.


Так куда тебе все-таки нужно: на панель задач, или там где часы?


 
DenXi ©   (2006-01-25 21:53) [12]

ShellAPI используй в Uses, а еще не забудь, что TfrmVillainy - этоназвание класса формы, у тя оно может быть что-то вроде TForm1 и т.д.


 
Scavenger ©   (2006-01-26 11:25) [13]

Всем спасибо все получилось. Нашел библиотеку RGTray95.
Ярлык загнал в автозагрузку. Форма при запуске минимизируется в значок возле часов. Использовал свойство wsMinimized формы.
При щелчке по иконке форма востанавливается.

procedure TForm1.PGTrayIcon951Click(Sender: TObject);
begin
PGTrayIcon951.ShowApplication;
form1.WindowState:=WsNormal;
end;



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

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

Наверх





Память: 0.47 MB
Время: 0.039 c
1-1136980916
Gear
2006-01-11 15:01
2006.02.12
Как можно установить Merge Module (*.MSM) с помощью Delphi ?


15-1138108442
Vlad Oshin
2006-01-24 16:14
2006.02.12
Почему может RAR не отсылать письма?


15-1137704372
Yura32
2006-01-19 23:59
2006.02.12
Новый сайт :)


1-1137068572
oleg__
2006-01-12 15:22
2006.02.12
Формат даты


2-1137989054
dm37
2006-01-23 07:04
2006.02.12
Цвет сетки DBGrid





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский