Форум: "Начинающим";
Текущий архив: 2006.06.18;
Скачать: [xml.tar.bz2];
ВнизКак скопировать контрол в другой parent? Найти похожие ветки
← →
Asail (2006-06-01 19:21) [0]Здрасте!
Задача такая: есть две панели pnl1 и pnl2. На pnl1 лежит btn1 (TButton).
Нужно создать точно такую-же кнопку btn2 (со всеми свойствами) на pnl2.
Пытаюсь так:
btn2:=TButton.Create(pnl2);
btn2.Assign(btn1);
btn2.Parent:=pnl2;
Ругается на Assign - дескать, не могу скопировать TButton в TButton.
Что-то не то делаю, а как решить сию задачу что-то не врублюсь.
← →
Rial © (2006-06-01 19:29) [1]Ну переприсвой все поля вручную ....
btn2.Caption:=btn1.Caption;
btn1.OnClick:=btn1.OnClick;
...
btn2.Parent:=pnl2;
← →
Asail (2006-06-01 19:35) [2]
> Ну переприсвой все поля вручную ....
Круто, однако... Мне, в реальности, надо не только TButton копировать, но и еще TEdit, TDBGrid, TListBox и т.д. и т.п. Так-что, вручную запарюсь :-(.
Что, нет более красивого способа? Вроде, Assign должна помочь (согласно хелпу)... Но, как сей метод пользовать - не врублюсь :-(
← →
Rial © (2006-06-01 20:51) [3]Ну, может быть и есть. Не знаю.
Но тебе не все же копировать надо(только некоторые), а Assign-ить потомки WinControl-ов проблематично. Их ведь не сохранишь так просто.
Постарайся выйти из ситуации другим путем. Не копируй, а создай динамически сколько и где тебе их надо, и все.
← →
PZ (2006-06-02 05:59) [4]А Ctrl-C, Ctrl-V разве нельзя использовать?
← →
Asail (2006-06-02 15:35) [5]
> А Ctrl-C, Ctrl-V разве нельзя использовать?
Это как? В runtime?
← →
PZ (2006-06-02 15:55) [6]Runtime в вопросе не значится
← →
Сергей М. © (2006-06-02 15:56) [7]
> Asail (01.06.06 19:21)
Метод Assign() в ходе выполнения вызывает вирт.метод AssignTo(), который д.б. перекрыт конкретным наследником TPersistent.
← →
Asail (2006-06-02 16:13) [8]AssignTo, вроде, перекрыт в TWinControl... Тогда почему не срабатывает приведение типа (как явное, так и неявное)? Т.е.:
(btn AS TWinControl).Assign(Button1 AS TWinControl);
илиTWinControl(btn).Assign(TWinControl(Button1));
← →
Asail (2006-06-02 16:15) [9]
> PZ (02.06.06 15:55) [6]
> Runtime в вопросе не значится
Не надо придираться к словам. ИМХО, из вопроса вполне понятно, что речь идет о runtime...
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2006.06.18;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.01 c