![]() |
![]() ![]() ![]() ![]() |
|
Как выполнять дейтвия после исчезновения контекстного менюDelphi , Компоненты и Классы , Меню
Автор: 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.
После исчезновения контекстного меню можно выполнять действия, наследуя класс TPopupMenu и обрабатывая событие OnHide. Комментарии и вопросыПолучайте свежие новости и обновления по Object Pascal, Delphi и Lazarus прямо в свой смартфон. Подпишитесь на наш
|
||||
©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007 | ||||