1. Получи 30.000 рублей. Для получения денег необходимо принять участие в конкурсе авторов codeby. С условиями и призами можно ознакомиться на этой странице ...

    Внимание! Регистрация авторов на конкурс закрыта.

    Скрыть объявление
  2. Требуются разработчики и тестеры для проекта codebyOS. Требования для участия в проекте: Знание принципов работы ОС на базе Linux; Знание Bash; Крайне желательное знание CPP, Python, Lua; Навыки системного администрирования. Подробнее ...

    Скрыть объявление

Как определить имя программно-создаваемого Timage

Тема в разделе "Delphi - программирование", создана пользователем RuSeL, 16 май 2008.

  1. RuSeL

    RuSeL Гость

    Репутация:
    0
    Image:=TImage.Create(Self);
    Image.parent:=Self;
    LoadJPEGFromRes('f00', Image.Picture);
    Image.OnMouseDown:=Image1MouseDown;
    Image.OnMouseMove:=Image1MouseMove;
    Image.OnMouseUp:= Image1MouseUp;
    Image.PopupMenu:=PopupMenu1;
    Image.AutoSize:=True;

    Можно ли узнать имя созданного Image, чтобы потом отослать команду на удаление именно его? Если да - то каким образом?
     
  2. morpheus

    morpheus скриптописец

    Репутация:
    0
    Регистрация:
    7 авг 2006
    Сообщения:
    3.915
    Симпатии:
    1
    RuSeL
    самому задать ему имя
    Image.Name = "bla-bla-bla"
     
  3. etc

    etc Гость

    Репутация:
    0
    зачем чего-то куда-то посылать? у вас есть уже экземпляр объекта, зачем еще посылы какието?
     
  4. RuSeL

    RuSeL Гость

    Репутация:
    0
    Походу меня не совсем поняли. Я привёл свой код обработчика события TForm1.Button1Click. Он создаёт Image при нажатии. При втором кликании на кнопку, создаётся точно такой же рисунок и т.д. Но, походу, имена у них всех разные. Каждому задать имя я не могу, так как не знаю, сколько раз пользователь будет кликать на кнопку. Мне нужно узнать имя определённого Image, который будет вызывать PopupMenu при клике на нём правой клавишей мышки, для того чтобы удалить именно его через пукнт "Удалить" из PopupMenu.
    Или же это делается как-то по-другому?
     
  5. etc

    etc Гость

    Репутация:
    0
    Путь - через sender обработчика "Удалить".
     
  6. RuSeL

    RuSeL Гость

    Репутация:
    0
    Можно по-подробнее?
    Вы имели ввиду команду (Sender as TImage).Destroy?
     
  7. etc

    etc Гость

    Репутация:
    0
    Можно, но неахота :), не потому как вредный а потому как все же уже есть, осталось все соединить в логическую цепочку

    хинт: у TPopupMenu есть свойство PopupComponent, и еще принято пользовать Free вместо Destroy.
     
  8. RuSeL

    RuSeL Гость

    Репутация:
    0
    Спасибо за информацию. Проблему решил. Тему можно закрывать.
    P.S. PopUpMenu1.PopUpComponent.Free :)
     
Загрузка...

Поделиться этой страницей