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




Вниз

Как обновить содержимое Form2 из Form1 


iea   (2002-03-04 11:02) [0]

Уважаемые Мастера! Я создаю Form1, которая вызывает Form2. Требуется: при нажатии на кнопку в Form2 "Применить" перерисовать Form1, НЕ ЗАКРЫВАЯ Form2. Какое сообщение надо передать Form1? И если не затруднит, приведите, пожалуйста пример.



iea   (2002-03-04 11:05) [1]

Извините, вопрос не совсем точно сформулирован.
Правильно: как обновить содержимое Form1 из Form2?



Андрей Сенченко   (2002-03-04 11:06) [2]

Не надо никаких сообщений на мой взгляд. Просто ставишь в UNIT2
USES
UNIT1
И в процедуре обработки нажатия кнопки на Form2 пишешь
Form1.Repaint // ( или чего Ты там запланировал )



Sasha9   (2002-03-04 11:08) [3]

Form1.Refresh/Repaint/Update



Alx2   (2002-03-04 11:11) [4]

Или Form1.Invalidate :)



iea   (2002-03-04 11:34) [5]

Не совсем так :(


Для наглядного образца: сама IDE Delphi. Можно вызвать настройку редактора, изменить фонты, цвета и т.д., и применить к самому редактору, не закрывая самой же настройки.

Вопрос стоит так:

В Form1 стоит uses Form2
Из Form1 вызываю Form2. Произвожу манипуляции. Надо: не закрывая Form2, применить изменения к Form1. Как это сделать? Вариант с закрытием Form2 реализован. А без закрытия? Нельзя же из Form2 вызывать, например, метод Form1.ChanhePaint (выдуманный). Быть может, послать сообщение?



Alx2   (2002-03-04 11:41) [6]

>Нельзя же из Form2 вызывать, например, метод Form1.ChanhePaint
Почему? Можно.

Есть другой вариант: перед показом Form2 заполняешь ее поле (заранее созданное поле типа TForm1) Form2.UpdateToForm:=Form1;
Потом, в обработчике на кнопке "Применить" Form2 пишешь UpdateToForm.ChanhePaint



iea   (2002-03-04 11:52) [7]

Спасибо. Хочу уточнить:

Есть Form1. Назовем ее мамой. И есть Form2 - это дочка. И когда я вызываю Form2, она может обращаться к свойствам и методам Form1? Просто меня это удивляет, ибо получаем кольцеобразные ссылки, т.к. ранее в Form1 есть ссылка на Form2 в виде uses. А чтобы вызвать метод или свойство Form1 из Form2, в Form2 надо сослаться на Form1. Разве это возможно? Понятно, что мама ссылается на дочку, но может ли дочка ссылаться на маму?



Alx2   (2002-03-04 12:05) [8]

Может.
Просто второй модуль подключи в uses после implementation



lipskiy   (2002-03-04 15:38) [9]

Любая форма может ссылаться на любую, и при некорректно построенном коде реально можно зациклиться :) За этим надо следить самому.




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




Наверх





Память: 0.73 MB
Время: 0.029 c
4-57571           MrAngel               2002-01-21 12:11  2002.03.18  
И ещё один вопрос!!! Само описание HWND и HDC. Их внутренняя структура.


1-57409           Zool                  2002-03-02 11:28  2002.03.18  
Lines


14-57522          Юрий Федоров          2002-02-01 14:47  2002.03.18  
PopupMenu и санки


1-57417           Alex500               2002-03-02 13:54  2002.03.18  
Работа с графикой


14-57497          mart                  2002-02-03 20:25  2002.03.18  
не в тему