Jak usunąć dynamiczny TButton przy pomocy menu z Popup Menu?

0

Do Formy dodaję dynamicznie tworzone Buttony, przy tworzeniu takiego Buttona, podpinam do niego Popup Menu, czyli:

Btn.PopupMenu := PopupMenu1;

W PopupMenu1 dodałem pozycję Usuń i teraz nie wiem jaki kod tam wstawić bu usunąć kliknięty prawym przyciskiem myszy Button z Formy. Problemu bym nie miał, gdybym nie używał Popup Menu i pisał kod w np. OnClick buttona. Jeśli ktoś ogarnia temat, to proszę o jakąś formę pomocy.

0

Wskazanie na komponent, który wywołał menu kontekstowe, znajduje się we właściwości:

PopupMenu.PopupComponent

Problemu bym nie miał, gdybym nie używał Popup Menu i pisał kod w np. OnClick buttona.

Dopiero wtedy miałbyś problem, dlatego że nie możesz bezpośrednio zwolnić z pamięci komponentu, którego zdarzenie jest w danej chwili wykonywane; Było już o tym kilka wątków na forum - poszukaj sobie jeśli chcesz.

0

Dziękuję. Przepraszam, że dopiero teraz piszę, bo dopiero teraz miałem okazję sprawdzić to. Problem rozwiązany.

Kod w itemie w popupmenu1:

  c2: TButton;
begin
  c2 := PopupMenu1.PopupComponent as TButton;
  c2.Caption := 'test 2';

Działa i mam nadzieję, że nie popełniam błędu.

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0