Ver Mensaje Individual
  #4  
Antiguo 29-07-2004
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Reputación: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
Las operaciones que aparecen en el menú contextual de un Edit pueden realizarse por medio de métodos del mismo Edit:

CutToClipboard - Cortar
CopyToClipboard - Copiar
PasteFromClipboard - Pegar
Clear - Eliminar
Undo - Deshacer

Podrías entonces manejar así los eventos de tu menú

Código Delphi [-]
procedure TForm1.Cut1Click(Sender: TObject);
begin
  if (ActiveControl is TEdit) and TEdit(ActiveControl).Enabled then
    TEdit(ActiveControl).CutToClipboard;
end;

procedure TForm1.Copy1Click(Sender: TObject);
begin
  if (ActiveControl is TEdit) and TEdit(ActiveControl).Enabled then
    TEdit(ActiveControl).CopyToClipboard;
end;

procedure TForm1.Paste1Click(Sender: TObject);
begin
  if (ActiveControl is TEdit) and TEdit(ActiveControl).Enabled then
    TEdit(ActiveControl).PasteFromClipboard;
end;

procedure TForm1.Delete1Click(Sender: TObject);
begin
  if (ActiveControl is TEdit) and TEdit(ActiveControl).Enabled then
    TEdit(ActiveControl).Clear;
end;


Nota que cada evento verifica si el control activo (el que tiene el foco) es un Edit y sí está habilitado.

También podrías usar un TActionList para codificar los eventos y usar su evento OnUpdate para habilitar o inhabilitar las opciones en tu menú de acuerdo a sí el control activo es o no un Edit y si hay algo seleccionado o no.

// Saludos

Última edición por roman fecha: 29-07-2004 a las 00:48:56.
Responder Con Cita