Форум: "Основная";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.03.04;
Скачать: [xml.tar.bz2];




Вниз

Копирование компонентов!!! 


Serghei   (2002-02-15 09:01) [0]

Привет! Не подскажет ли кто нибудь как я могу, во время выполнения программы, скопировать несколько компонентов с основной формы на некую другую - диалоговую, сохраняя при этом все их свойства (есть и визуальные и невизуальные компоненты)!
Заранее благодарен!



Digitman (M)   (2002-02-15 09:18) [1]

назови классы конкретных компонентов



Юрий Зотов (M)   (2002-02-15 09:23) [2]

См. TStream.Read/WriteComponent(Res).

Это позволяет клонировать любой компонент вместе с его любыми published-свойствами.



Serghei   (2002-02-15 09:23) [3]

Это все компоненты для работы с БД. TDataSet(1 comp.), TTable(1 comp.), TDBEdit(2 comp.) TDBMemo (1 comp.) i TDBGrid



cppapi   (2002-02-15 09:30) [4]

Можно поступить несколькими способами.
1. Применением процедуры Assign (но не все компоненты его переопределяют)
2. Создать второй экземпляр формы и изменить AOwner и Parent у требуемых компонентов на значение той форму куда ты собрался копировать.
3. Залезть в RTTI и оттуда получить информацию о значениях свойств компонентов, и потом их создать.
4. Изучить как расположена информация о компоненте в памяти и копировать в памяти.
5. можно ещё придумать. НОООООООО! Поверь мне, в твоём случае, это тебе НЕ НУЖНО. Все эти извращения последствия болезни роста. Вот когда ты придумаешь как без этого обойтись вот тогда ты будешь зрелым программистом.



Serghei   (2002-02-15 09:38) [5]

>> cppapi
Согласен, до зрелого программиста мне ой как далеко! Я могу в принципе и обойтись без этого копирования но все же интересно знать как ето сделать! :0)
>> all
Спасибо всем!




Форум: "Основная";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.03.04;
Скачать: [xml.tar.bz2];




Наверх





Память: 0.72 MB
Время: 0.036 c
3-9065            fag2000@ok.ru         2002-02-06 15:18  2002.03.04  
как узнать что запись новая


1-9180            who                   2002-02-14 10:05  2002.03.04  
Передача параметров из exe в exe


1-9137            LLL                   2002-02-16 20:04  2002.03.04  
Рамка для компонента


7-9320            AlexKniga             2001-11-27 18:10  2002.03.04  
Не в тему. Про аудио системы.


1-9122            vic_vm                2002-02-16 16:46  2002.03.04  
Вопрос по Excel.