M
misterio
Сообственно весь способ описан тут :
Но у меня возникла проблема. Програма сама сворачиваеться в трэй, но разворачиваться не хочет никак.
Вот кусочек, который отвечает за разворот :
Сообственно не срабатывает вот это вообще :
А если нажата вторая кнопка на мише, то срабатывает только PopupMenu1...
Остальное все вроде игнорируеться. Компилировалось на GodeGear RAD Studio.
Ссылка скрыта от гостей
или в базе данных.Но у меня возникла проблема. Програма сама сворачиваеться в трэй, но разворачиваться не хочет никак.
Вот кусочек, который отвечает за разворот :
Код:
procedure TForm1.IconMouse(var Msg:TMessage);
Var p:tpoint;
begin
GetCursorPos(p); // Запоминаем координаты курсора мыши
Case Msg.LParam OF // Проверяем какая кнопка была нажата
WM_LBUTTONUP,WM_LBUTTONDBLCLK: {Действия, выполняемый по одинарному или двойному щелчку левой кнопки мыши на значке. В нашем случае это просто активация приложения}
Begin
Ic(2,Application.Icon); // Удаляем значок из трея
ShowWindow(Application.Handle,SW_SHOW); // Восстанавливаем кнопку программы
ShowWindow(Handle,SW_SHOW); // Восстанавливаем окно программы
End;
WM_RBUTTONUP: {Действия, выполняемый по одинарному щелчку правой кнопки мыши}
Begin
SetForegroundWindow(Handle); // Восстанавливаем программу в качестве переднего окна
PopupMenu1.Popup(p.X,p.Y); // Заставляем всплыть тот самый TPopUp о котором я говорил чуть раньше
PostMessage(Handle,WM_NULL,0,0);
end;
End;
end;
Сообственно не срабатывает вот это вообще :
Код:
WM_LBUTTONUP,WM_LBUTTONDBLCLK: {Действия, выполняемый по одинарному или двойному щелчку левой кнопки мыши на значке. В нашем случае это просто активация приложения}
Begin
Ic(2,Application.Icon); // Удаляем значок из трея
ShowWindow(Application.Handle,SW_SHOW); // Восстанавливаем кнопку программы
ShowWindow(Handle,SW_SHOW); // Восстанавливаем окно программы
End;
А если нажата вторая кнопка на мише, то срабатывает только PopupMenu1...
Код:
PopupMenu1.Popup(p.X,p.Y);
Остальное все вроде игнорируеться. Компилировалось на GodeGear RAD Studio.