49306956



Создать ответ 
 
Рейтинг темы:
  • Голосов: 2 - Средняя оценка: 4.5
  • 1
  • 2
  • 3
  • 4
  • 5
Как поместить иконку в трей ? (опять)
Автор Сообщение
all__ Не на форуме
Админ
*******

Сообщений: 730
Зарегистрирован: 01.2010
Сообщение: #11
RE: Как поместить иконку в трей ? (опять)
В процессе работы с компонентом обнаружил несколько проблем, вот решение первой:
Скрыть PopUp при потере фокуса

Вторая проблема связана с тем, что приложение не дает Windows XP отключиться.

Лечится добавлением в класс обработчика события WM_QUIT:
Код:
procedure TSimpleTray.SysTrayIconMsgHandler(var Msg: TMessage);
var pt:TPoint;
begin
  case Msg.lParam of
    WM_MOUSEMOVE:;
    WM_LBUTTONDOWN: begin
        ShellExecute(appHANDLE,'',pchar(ExtractFilePath(Application.ExeName) + 'ScreenSender.exe'),'','',0);
      end;
    WM_LBUTTONUP:;
    WM_LBUTTONDBLCLK:;
    WM_RBUTTONDOWN:;
    WM_RBUTTONUP: begin
      GetCursorPos(pt);
      Popup.Popup(pt.X,pt.Y);
    end;
    WM_QUIT: Free;  // Нужно добавить эту строку!
  end;
end;
(Последний раз сообщение было отредактировано 18.09.2010 в 9:31, отредактировал пользователь all__.)
18.09.2010 9:23
Вебсайт Найти все сообщения Цитировать это сообщение
Создать ответ