• Курсы Академии Кодебай, стартующие в мае - июне, от команды The Codeby

    1. Цифровая криминалистика и реагирование на инциденты
    2. ОС Linux (DFIR) Старт: 16 мая
    3. Анализ фишинговых атак Старт: 16 мая Устройства для тестирования на проникновение Старт: 16 мая

    Скидки до 10%

    Полный список ближайших курсов ...

использование динамической компоненты

  • Автор темы infeter
  • Дата начала
Статус
Закрыто для дальнейших ответов.
I

infeter

создал динамический компонент tlistbox. привязал к нему событие через свою процедуру. в этой процедуре могу определить как, например,

Код:
procedure TFormMain.ClickMyList(Sender: TObject);
var
my: TListBox;
memo: TMemo;
begin
my:=(Sender as TListBox);
showmessage(my.Items.Strings[my.ItemIndex]);
end;

теперь МОЙ ВОПРОС. как Вы уже, наверное, заметили, я хочу передать имя выбранного значения tlistbox в TMemo. проблема в том, что эта TMemo тоже была создана динамически... имя, например, Memo0. как мне сослаться на Memo0 через переменную из моей процедуры, чтобы изменить там текст?

я в тупике...
 
B

Barmutik

Хммм.. если я правильно понял то наужно найти компонент TMemo по его имени ...

Можно предложить попробовать так:

Код:
var
AMemo: TMemo;
AComponent: TComponent;
begin
...
AComponent := MainForm.FindComponent('Memo0');
if AComponent <> nil then
 if AComponent is TMemo then
  AMemo := AComponent as TMemo
 else
  AMemo := nil 
else
 AMemo := nil

Прошу обратить внимание на то что искать надо у того отца которому приналдежит компонент!
 
I

infeter

Для: Barmutik
спасибо. м не здесь на форуме в КОМПОНЕНТАХ помогли.

Прошу обратить внимание на то что искать надо у того отца которому приналдежит компонент!
да. до этого я сначала не дорубился... но потом всё исправил... :)

теперь работает. всем спасибо.
 
Статус
Закрыто для дальнейших ответов.
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!