Меню в System Tray

Модераторы: Duncon, Naeel Maqsudov, Хыиуду, Игорь Акопян

Ответить
Scorpion
Сообщения: 6
Зарегистрирован: 19 мар 2004, 12:54
Контактная информация:

22 мар 2004, 11:43

Здрасте.
Я заношу иконку своей проги в System Tray.
:?: Не подскажите как сделать, чтобы при нажатии на иконку выскакивала менюшка.
Заранее благодарен......
Аватара пользователя
Naeel Maqsudov
Сообщения: 2551
Зарегистрирован: 20 фев 2004, 19:17
Откуда: Moscow, Russia
Контактная информация:

23 мар 2004, 07:09

Код: Выделить всё

Для начала

Const
  CM_MyTrayMsg = WM_USER+1;


Затем, при создании иконки в структуре NOTIFYICONDATA
  .uCallbackMessage = CM_MyTrayMsg;
  .hWnd = Form1.Handle;


В самой Form1
  protected
    procedure WndProc(var Message: TMessage); override;

.....

procedure WndProc(var Message: TMessage); override;
begin
   with Message do begin
     if Message=CM_MyTrayMsg then begin
        case lParam of
          WM_LBUTTONDBLCLK: ....;
          WM_RBUTTONDBLCLK: ....;
          WM_MBUTTONDBLCLK: ....;
          WM_MOUSEMOVE: ....;
          WM_LBUTTONDOWN: ....;
          WM_LBUTTONUP: ....;
          WM_RBUTTONDOWN: ....;
          WM_RBUTTONUP: ....;
          WM_MBUTTONDOWN: ....;
          WM_MBUTTONUP: ....;
        end; 
     end;
     Inherited;
   end;
end;


Ответить