Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 14.09.2012, 07:35   #1
fobass
Форумчанин
 
Регистрация: 05.06.2008
Сообщений: 100
По умолчанию поместить компонент из 1 формы на 2

Всем привет
У меня один вопрос, как поместить компонент из главной формы на вторую?
Т.е на главной форме есть несколько Panel -ов , Panel- -ы содержит еще компоненты (shape1, lable1 etc) как контейнер. В зависимости выбора Combobox мне нужно открыть эти Panel - ы на другой форме, скажем для настройки.
fobass вне форума Ответить с цитированием
Старый 14.09.2012, 07:52   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

PanelТакаято.Parent:=ФормаТакаято
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 14.09.2012, 08:02   #3
fobass
Форумчанин
 
Регистрация: 05.06.2008
Сообщений: 100
По умолчанию

Простите, не уточнил вопрос.
Form1.Panel1.Parent := Form2;
Данный код удаляет из Form1.Panel1 и открывает на Form2
Мне нужно чтоб Panel1 было видно Form1 и на Form2
fobass вне форума Ответить с цитированием
Старый 14.09.2012, 08:28   #4
BARNEY
Участник клуба
 
Регистрация: 23.04.2009
Сообщений: 1,058
По умолчанию

может вам проще использовать PageControl... а то какими то извращениями попахивает
Если вам человек помог, не стесняйтесь говорить спасибо (весы под аватаром)
BARNEY вне форума Ответить с цитированием
Старый 14.09.2012, 08:33   #5
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
Мне нужно чтоб Panel1 было видно Form1 и на Form2
У.у.у... Тогда тут наверное нужны не панели а фреймы...
Цитата:
Данный код удаляет
Данный код ничего не удаляет. Он просто перемещает контролл от формы к форме.
Если тебе нужно видеть на экране одновременно и там и там то Frame вместо панели лучше будет.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 14.09.2012, 09:00   #6
fobass
Форумчанин
 
Регистрация: 05.06.2008
Сообщений: 100
По умолчанию

глв. Форма содержит агрегаты. Агрегат – это Panel’и. Каждый агрегат состоит из
shape’ов- который меняет цвет в зависимости от сигнала поступающий через COM порт
и label’ов который отображает числовое значение поступающий через COM порт.
Мне нужно добавить функцию ввода погрешности числовых значении для каждого агрегата индивидуально. Т.е грубо говоря открыл вторую форму, выбрал из Combobox’а агрегат и смело отредактировал значение. Так вот я не могу воспользоваться кодом который подсказал товарищ Stilet так как на глв. Форме оно исчезает.
fobass вне форума Ответить с цитированием
Старый 14.09.2012, 09:05   #7
fobass
Форумчанин
 
Регистрация: 05.06.2008
Сообщений: 100
По умолчанию

Цитата:
Данный код ничего не удаляет. Он просто перемещает контролл от формы к форме.
Ясно!
Цитата:
Если тебе нужно видеть на экране одновременно и там и там то Frame вместо панели лучше будет.
т.е Frame2 вместо Form2?
или как? я чет не догоняю

Последний раз редактировалось fobass; 14.09.2012 в 09:13.
fobass вне форума Ответить с цитированием
Старый 14.09.2012, 09:38   #8
evg_m
Старожил
 
Регистрация: 20.04.2008
Сообщений: 5,526
По умолчанию

Цитата:
Мне нужно добавить функцию ввода погрешности числовых значении для каждого агрегата индивидуально. Т.е грубо говоря открыл вторую форму, выбрал из Combobox’а агрегат и смело отредактировал значение. Так вот я не могу воспользоваться кодом который подсказал товарищ Stilet так как на глв. Форме оно исчезает.
Мне нужно что бы я
1. открыл вторую форму, увидел на ней тоже самое что есть на первой (точнее нужную часть первой)
2 настроил(подобрал) параметры (при этом на второй форме происходят изменения, но первая форма должна остаться неизменной)
3. нажал кнопку ОК и все параметры(изменения) перенеслись в первую.

ТАК мыслишь выполнение?
Без копирования никак.

Копировать можно не только дизайнерские формы (панели, и т.п.)
Но и информацию получаемую от портов. Получили и направили в ДВА окна.
Цитата:
который отображает числовое значение поступающий через COM порт.
Для копирования без копирования (а просто повторного использования вида и кода связанного с данным видом) придумали и используют фреймы (TFrame).
программа — запись алгоритма на языке понятном транслятору

Последний раз редактировалось evg_m; 14.09.2012 в 09:41.
evg_m вне форума Ответить с цитированием
Старый 14.09.2012, 10:01   #9
fobass
Форумчанин
 
Регистрация: 05.06.2008
Сообщений: 100
По умолчанию

Цитата:
Мне нужно что бы я
1. открыл вторую форму, увидел на ней тоже самое что есть на первой (точнее нужную часть первой)
2 настроил(подобрал) параметры (при этом на второй форме происходят изменения, но первая форма должна остаться неизменной)
3. нажал кнопку ОК и все параметры(изменения) перенеслись в первую.
да так и должно быть. сорри... по пятницам меня тупизм захватывает.
Хорошо что телепаты не на отпуске.
Цитата:
Для копирования без копирования (а просто повторного использования вида и кода связанного с данным видом) придумали и используют фреймы (TFrame).
да понял, спасибо!. Разбираюсь с фрейми
fobass вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Поместить фокус на поле подчиненной формы serega1576 Microsoft Office Access 3 21.09.2011 11:42
Перетаскиавние формы за динамически созданный компонент MyIE Общие вопросы Delphi 1 10.10.2010 11:15
Как поместить в компонент ImageList иконки 32бит + Альфа Канал? KyzDmitry Компоненты Delphi 1 04.07.2009 15:48
компонент и обработчик сообщений формы Пепел Феникса Компоненты Delphi 2 13.05.2009 12:18
Перемещение формы за компонент Zeraim Общие вопросы Delphi 2 20.05.2008 09:26