Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2007.02.18;
Скачать: CL | DM;

Вниз

не могу закрыть форму   Найти похожие ветки 

 
=Teddy=   (2007-01-29 14:30) [0]

Помогите!Как из одного модуля закрыть форму в другом модуле?


 
Сергей М. ©   (2007-01-29 14:34) [1]

Прямо так и закрыть:

ИмяМодуля.ИмяПеременнойХрянящейСсылкуНаОбъектСуществующейФормы.Close;


 
novill ©   (2007-01-29 14:36) [2]

Если модуль - это Дельфи unit, то
1. включить "другой" модуль в uses этого
2. написать имя_другой_формы.close


 
Сергей М. ©   (2007-01-29 14:38) [3]

Боже, какую ахинею ты несешь


 
novill ©   (2007-01-29 14:56) [4]

> [3] Сергей М. ©   (29.01.07 14:38)

поясни


 
Сергей М. ©   (2007-01-29 15:02) [5]


> поясни


Сачала ты поясни, что значит "как" ..


 
tesseract ©   (2007-01-29 15:14) [6]


> novill ©   (29.01.07 14:36) [2]


Гм, а если переменная формы не в интерфейсной части объявлена?


 
Плохиш ©   (2007-01-29 15:19) [7]

А мне интересно, что это за модули-такие, в которых находяться какие-то формы, которые кто-то почему-то закрыть хочет?


 
Piroxyline ©   (2007-01-29 15:19) [8]

А никак. Тут тогда два пути: объявить ее в интерфейсной части или объявить там же процедуру, которая бы закрыла эту форму :)


 
Сергей М. ©   (2007-01-29 15:28) [9]


> Piroxyline ©   (29.01.07 15:19) [8]


Всегда найдется как минимум один - третий  - путь, не требующий ни того ни другого


 
novill ©   (2007-01-29 15:39) [10]

> [9] Сергей М. ©   (29.01.07 15:28)

И найдется ситуация, когда ни один из предложенных вариантов не подходит.


 
Сергей М. ©   (2007-01-29 15:40) [11]


> novill ©   (29.01.07 15:39) [10]


Обязательно найдется.


 
RASkov   (2007-01-30 00:26) [12]

> [0] =Teddy=   (29.01.07 14:30)
> Помогите!Как из одного модуля закрыть форму в другом модуле?

В первую очередь нужно сделать так, чтобы ИмяПеременнойХрянящейСсылкуНаОбъектСуществующейФормы было "видимо" в том модуле из которого хочешь ее(форму) закрыть. А далее при таком объявлении переменной формы

interfase
...
var Frm: TForm;

implimentation


справедливы варианты [1] и [2]

> [6] tesseract ©   (29.01.07 15:14)


при таком (не стандартном:)
interfase
...

implimentation

var Frm: TForm;


не прокатит ни [1] ни [2] :( Тут и создать ее будет проблема не только закрыть(это если она не объявлена в интерфейсной части);
можно и так SendMessage(FindWindow(nil,"FormCaption"), WM_CLOSE, 0, 0);


 
RASkov   (2007-01-30 00:36) [13]

> Тут и создать ее будет проблема не только закрыть

Хотя проблемы может и не быть, если сделать как в [8] объявить там же процедуру, которая бы закрыла эту форму.
Объявить в "другом модуле", где переменная формы не обявлена в интерфесной части, две процедуры создания и закрытия....


 
GrayFace ©   (2007-01-30 15:23) [14]

Сергей М. ©   (29.01.07 14:38) [3]
Боже, какую ахинею ты несешь

Все там правильно.


 
GrayFace ©   (2007-01-30 15:24) [15]

RASkov   (30.01.07 0:26) [12]
можно и так SendMessage(FindWindow(nil,"FormCaption"), WM_CLOSE, 0, 0);

См. [3] :)


 
RASkov   (2007-01-30 18:38) [16]

> См. [3] :)

Каждый программер (и не только) несет ахинею по своему, у некоторых получается у некоторых нет :)
Я, в данном случае(да и в общем), не заставляю так делать а просто предлогаю вариант, пусть не удачный, но если есть голова то разберется, а если ее нет, то сдесь что хочешь предлогай.... человек еще раз(не раз) спросит....
А по вопросу: Помогите!Как из одного модуля закрыть форму в другом модуле?, вообще думаю - развод.



Страницы: 1 вся ветка

Текущий архив: 2007.02.18;
Скачать: CL | DM;

Наверх




Память: 0.5 MB
Время: 0.043 c
3-1164623047
Feds
2006-11-27 13:24
2007.02.18
Ошибка с проверкой на Null


2-1170322622
марат
2007-02-01 12:37
2007.02.18
Изменение названия поля


2-1169900656
NightRain
2007-01-27 15:24
2007.02.18
А можно в ComboBoxs заблокировать одну строку?


1-1167209405
IMHO
2006-12-27 11:50
2007.02.18
Математическое прогнозирование спортивного события


15-1169518575
Spider_NET
2007-01-23 05:16
2007.02.18
Конкурс