Программы   Загрузка Партнерство   О компании Контакты  
 
                    
  Карта Сайта   
   





Как выполнять дейтвия после исчезновения контекстного меню

Автор: i-s-v

Допустим, у вас на форме расположено контекстное меню PopupMenu1.. Выполнять действия сразу перед появлением меню просто, достаточно дописать код в обработчике события OnPopup этого меню. А как выполнять действия сразу после исчезновения меню? Вот... Используйте вместо TPopupMenu и обрабатывайте событие OnHide... unit MyExtPopupMenu;


(*
  Обычное попап-меню, в котором добавлена возможность обработки события
  при исчезновении менюшки...
  Created by i-s-v (2004)
  Visit my web-site http: //isv.iatp.org.ua

  Kirovograg, Ukraine
*)


interface

uses
  SysUtils, Classes, Menus;

type
  TMyExtPopupMenu = class(TPopupMenu)
  private
    FOnHide: TNotifyEvent;
  public
    procedure Popup(X, Y: Integer); override;
  protected
    procedure DoHide(Sender: TObject); virtual;
  published
    property OnHide: TNotifyEvent read FOnHide write FOnHide;
  end;

procedure Register;

implementation

procedure TMyExtPopupMenu.DoHide(Sender: TObject);
begin
  if Assigned(FOnHide) then
    FOnHide(Sender);
end;

procedure TMyExtPopupMenu.Popup(X, Y: Integer);
begin
  inherited Popup(x, y);
  DoHide(Self);
end;

procedure Register;
begin
  RegisterComponents('Samples', [TMyExtPopupMenu]);
end;

end.
           




Программы  |  Загрузка  |  Партнерство  |  О компании  |  Контакты

Copyright © LSD Software 2006 - 2011