а по-другому(проще) нельзя сделать через свойство PopupMenu..
все идею понял))
вот так попробуй...
Код:
procedure TForm1.RichEdit1ContextPopup(Sender: TObject; MousePos: TPoint;
var Handled: Boolean);
begin
//richPopup.Popup(MousePos.X+GetClientOrigin.x,MousePos.y+GetClientOrigin.y);
end;
function TForm1.GetRichEditFromPopup: TRichEdit;
begin
//нужно добавить некоторую проверку (if richEditContextMenu.PopupComponent is TRichEdit)
result := TRichEdit(RichPopup.PopupComponent) ;//result равен nil!!!
end;
procedure TForm1.RichPopupPopup(Sender: TObject);
var
re : TRichEdit;
begin
re := GetRichEditFromPopup;
N1.Enabled := re.SelText <> '';
end;
procedure TForm1.N1Click(Sender: TObject);
begin
GetRichEditFromPopup.ClearSelection;
end;
end.
и не забудь свойству Popupmenu назначить свой popup