спешите! Не упустите скидки: круиз на теплоходе + экскурсия на теплоходе в нашей компании. Много!
все просто. Предложение для Вас: деловая авиация + заказать чартер теперь доступнее. Только летом!



 



Приложение не убирает всплывающее меню после потери фокуса



    Приложение не убирает всплывающее меню после потери фокуса Приложение не убирает всплывающее меню после потери фокуса

Автор: Олег Кулабухов

- Кто самый сексуальный мужчина в мире?
- Билл Гейтс - его хотят отыметь все.

Во время обработки сообщений PopUp меню, вы должны назначить активное окно, а потом после всплывания меню послать сообщение WM_NULL.


procedure TForm1.WndProc(var Msg: TMessage);
var
  p: TPoint;
begin
  case Msg.Msg of
    WM_USER + 1:
      case Msg.lParam of
        WM_RBUTTONDOWN:
          begin
            SetForegroundWindow(Handle);
            GetCursorPos(p);
            PopupMenu1.Popup(p.x, p.y);
            PostMessage(Handle, WM_NULL, 0, 0);
          end;
      end;
  end;
  inherited;
end;



 
Время генерации страницы 0.029867 сек.