Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   Como puedo hacer con un popumenu...? (https://www.clubdelphi.com/foros/showthread.php?t=77245)

Hayton 06-01-2012 20:25:36

Como puedo hacer con un popumenu...?
 
Hola a todos.

Mi consulta es la siguiente: tengo un formulario con varias imagenes, las cuales tiene un popupmenu (todas el mismo). Lo que quiero hacer es que al pulsar la opcion eliminar del popup, se elimine la imagen.

Mi problema es que cuando intento realizar el procedimiento de eliminacion de la imagen, no se en que parametro del popup esta la imagen que lo ha llamado. Necesitaria eso, saber que imagen a llamado el procedimiento eliminar del popup.

Saludos.

Chris 06-01-2012 20:39:52

El componente TPopupMenu tiene un evento que se llama OnPopup. Ese evento incluye un parámetro que se llama Sender. Sino me equivoco, el parámetro Sender es el que te indicaría que imagen ha llamado al PopupMenu. Guardas la referencia en una variable y luego al ejecutar el procedimiento eliminar, utilizas la variable para determinar cuál es la imagen que tendrás que eliminar.

Saludos,
Chris

Caral 06-01-2012 21:35:17

Hola
Aqui tienes un ejemplo sencillo.
Código Delphi [-]
var
  Form1: TForm1;
  imagen: integer;
implementation

{$R *.dfm}

procedure TForm1.Image1Click(Sender: TObject);
begin
  PopupMenu1.Popup(Mouse.CursorPos.X, Mouse.CursorPos.Y);
  imagen:= 1;
end;

procedure TForm1.Image2Click(Sender: TObject);
begin
   PopupMenu1.Popup(Mouse.CursorPos.X, Mouse.CursorPos.Y);
  imagen:= 2;
end;

procedure TForm1.eliminar1Click(Sender: TObject);
begin
  if imagen = 1 then
  image1.Visible:= False;
  if imagen = 2 then
  image2.Visible:= False;
end;

procedure TForm1.eliminarycolocar1Click(Sender: TObject);
begin
  if imagen = 1 then
  image1.Picture:= image3.Picture;
  if imagen = 2 then
  image2.Picture:= image3.Picture;
end;
Saludos

Hayton 07-01-2012 02:12:21

Hola, en el evento onpopup el sender es un tpopupmenu que entre una de sus propiedades hay una que es popupcomponent que te devuelve el componente que llamo al menu, que es lo que queria.

Muchas gracias a todos.


La franja horaria es GMT +2. Ahora son las 03:08:50.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi