Recent

Author Topic: Identificar el elemento sobre el que se abre un menú contextual  (Read 1958 times)

mgayo

  • New Member
  • *
  • Posts: 17
Hola:
Tengo un menú contextual (Popupmenu) y lo vinculo con una serie de imágenes que he ido cargado del disco y están en un panel.
Cuando se ejecutan las opciones del menú contextual necesito saber sobre qué imagen se desplegó el menú para que sea el objetivo de la acción que quiero realizar, pero el Sender que se recibe es, lógicamente, el del menú contextual.
¿Cómo puedo determinar sobre cual de las imágenes se desplegó el menú?
Muchas gracias.
« Last Edit: June 10, 2021, 08:37:50 pm by mgayo »

Edson

  • Hero Member
  • *****
  • Posts: 1296
Re: Identificar el elemento sobe el que se abre un menú contextual
« Reply #1 on: June 10, 2021, 08:22:53 pm »
Hola

¿Dónde se muestran las imágenes que cargas? ¿Un control TImage o algo así?

Si cada imagen se carga en un TImage, usa el evento del TImage que detecta cuando se hace click derecho, para asignar una variable y mostrar el menú. Algo como:

procedure on_click_derecho_TImage1();
begin
  img := TImage1;
  mostrar_menu_contextual_para_hacer_algo_con_img();
end;

Lo mismo sería con cada TImage.

La asignación de eventos no tiene que hacerse manualmente, se puede hacer de manera automática.

Pero la mejor solución depende de cómo hayas implementado tu vista de imágenes.

Lazarus 2.2.6 - FPC 3.2.2 - x86_64-win64 on Windows 10

 

TinyPortal © 2005-2018