» » Компонента TTrayIcon

 

Компонента TTrayIcon

Автор: reader hlp от 21-02-2023, 10:13, посмотрело: 37

Кидаем на форму Button,
компонент TTrayIcon
компонент ApplicationEvents

Для начала нам нужно свернуть программу в трей, и разворачивать ее оттуда.
В компоненте ApplicationEvents выбираем событие OnMinimize и пишем следующий код:

procedure TForm1.ApplicationEvents1Minimize(Sender: TObject);
begin
TrayIcon1.visible := True;
//Убираем с панели задач
 ShowWindow(Handle,SW_HIDE);  // Скрываем программу
   ShowWindow(Application.Handle,SW_HIDE);  // Скрываем кнопку с TaskBar'а
SetWindowLong(Application.Handle, GWL_EXSTYLE,
GetWindowLong(Application.Handle, GWL_EXSTYLE) or (not WS_EX_APPWINDOW));
end;


Результат выполнения этого куска кода: при минимизации формы, в трее появится значок программы, и форма исчезнет.

Чтобы вернуть форму на экран, напишем следующий код:

procedure TForm1.TrayIcon1DblClick(Sender: TObject);
begin
TrayIcon1.ShowBalloonHint;
ShowWindow(Handle,SW_RESTORE);
SetForegroundWindow(Handle);
TrayIcon1.Visible := False;
end;


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

Теперь научим программу посылать нам уведомления. Рассмотрим на примере кнопки:

procedure TForm1.Button2Click(Sender: TObject);
begin
TrayIcon1.visible := True; // делаем значок в трее видимым
trayicon1.balloontitle := ('Текст 1');
trayicon1.balloonhint := ('Текст 2');
trayicon1.showballoonHint;// показываем наше уведомление
end;
скачать dle 12.0

Категория: Pascal Delphi