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

Вниз

System Tray & Сворачивание Разворачивание Программы.   Найти похожие ветки 

 
Зигмунд ©   (2005-02-14 12:49) [0]

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


 
Зигмунд ©   (2005-02-14 13:17) [1]

Как сделать-то? в трей помешать я уже научился. а как свернуть в трей? Помогите мне.


 
Cosinus ©   (2005-02-14 13:25) [2]

Отлавливать сообщения мыши. См. справку+кучу примеров в нете.


 
Jay1982 ©   (2005-02-14 13:32) [3]

Ты обрабатываешь полученные сообщения, а теперь делай так:

if Form1.Visible then Form1.Hide else Form1.Show

или же с "анимацией"

if Form1.Visible then
begin
 PostMessage(Form1.Handle, WM_MINIMIZE, 0, 0);
 Form1.Hide
end else
 Form1.Show
end;


 
Jay1982 ©   (2005-02-14 13:34) [4]

Ты обрабатываешь полученные сообщения, а теперь делай так:

if Form1.Visible then Form1.Hide else Form1.Show

или же с "анимацией"

if Form1.Visible then
begin
 PostMessage(Form1.Handle, WM_MINIMIZE, 0, 0);
 Form1.Hide
end else
 Form1.Show
end;


 
Jay1982 ©   (2005-02-14 13:35) [5]

Ты обрабатываешь полученные сообщения, а теперь делай так:

if Form1.Visible then Form1.Hide else Form1.Show

или же с "анимацией"

if Form1.Visible then
begin
 PostMessage(Form1.Handle, WM_MINIMIZE, 0, 0);
 Form1.Hide
end else
 Form1.Show
end;


 
Jay1982 ©   (2005-02-14 13:47) [6]

Немного ошибся:

 PostMessage(Form1.Handle, WM_SYSCOMMAND, SC_MINIMIZE, 0)


 
Зигмунд ©   (2005-02-14 13:48) [7]


> Jay1982 ©

Спасибо. Но это то я знал.
А вот Как отловить что призошел клик именно над значком моей программы, находяшейся в system tray?


 
Jay1982 ©   (2005-02-14 13:52) [8]

Зигмунд ©   (14.02.05 13:48) [7]
А как ты его туда добавляешь?


 
Зигмунд ©   (2005-02-14 14:09) [9]


> Jay1982 ©

через Shell_NotifyIcon


 
Jay1982 ©   (2005-02-14 15:13) [10]

Тогда в uCallbackMessage ты указываешь, сообщение, которое отсылаешь окну, вот его и обрабатывай...


 
Зигмунд ©   (2005-02-15 11:44) [11]

Копался, копался весь день но так и не понял как сворачивать, а добавляю вот так:
const WM_MY_MESSAGE = WM_USER + 0;

procedure UpdateTaskBar;
var NotifyData: TNotifyIconData;
begin

With NotifyData do
begin
cbSize           := SizeOf(TNotifyIconData);
Wnd              := Application.Handle;
uID              := 0;
uFlags           := NIF_ICON or NIF_MESSAGE or NIF_TIP;  uCallbackMessage := WM_MY_MESSAGE;  
hIcon            := Application.Icon.Handle;
szTip            := "Отправка!";  
end;
Shell_NotifyIcon(NIM_ADD, @NotifyData);
end;


 
grom   (2005-02-15 12:35) [12]

...
private
procedure Ico(var M:TMessage); message WM_USER+456;
...
procedure UpdateTaskBar;
var NotifyData: TNotifyIconData;
begin
With NotifyData do
begin
cbSize           := SizeOf(TNotifyIconData);
Wnd              := Form1.Handle;
uID              := 1;
uFlags           := NIF_ICON or NIF_MESSAGE or NIF_TIP;
uCallbackMessage := WM_USER+456;
hIcon            := Application.Icon.Handle;
szTip            := "Îòïðàâêà!";
end;
Shell_NotifyIcon(NIM_ADD, @NotifyData);
end;

procedure TForm1.Ico(var M:TMessage);
begin
if M.WParam = 1 then
case M.LParam of
WM_RBUTTONUP : Visible:= not Visible;
WM_LBUTTONUP : Visible:= not Visible;
WM_MBUTTONUP : Visible:= not Visible;
end;
end;


 
Зигмунд ©   (2005-02-15 15:03) [13]

Спасибо.



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

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

Наверх




Память: 0.49 MB
Время: 0.034 c
1-1110471352
Неумный
2005-03-10 19:15
2005.03.27
Как изменить цвет фона в html странице?


6-1106840265
Alex870
2005-01-27 18:37
2005.03.27
Динамический IP-адрес


3-1109700634
mefisto
2005-03-01 21:10
2005.03.27
Подключение файлов .mdf и .ldf сервера MSSQL7 к MSSQL2000


4-1108103302
Jetus
2005-02-11 09:28
2005.03.27
Изменение данных о версии чужого ехе-файла


4-1108446793
TeNY
2005-02-15 08:53
2005.03.27
LoadString,LoadBitmap и прочие load...