Вниз
Скачать: CL | DM;

Перегрузка ShowModal   Найти похожие ветки 

 
Piter ©   (2004-02-04 00:42) [0]

Есть специальная форма для ввода данных, пользователь в этой форме набивает некоторые данные, которые должны быть возвращены формой в виде некой записи (record).
Как реализовать возврат данных?

Я думаю создать свой класс от TForm, перекрыть метод ShowModal, чтобы он возвращал нужную мне запись.

Насколько такой подход рационален и есть ли другие варианты?


 
Юрий Зотов ©   (2004-02-04 00:49) [1]

type
TMyData = record
...
end;

TForm2 = class(TForm
...
public
MyData: TMyData;
...
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
with TForm2.Create(nil) do
try
if ShowModal = mrOK then
with MyData do
begin
... // Получили Ваши данные
end
finally
Free
end
end;

И ничего не надо перекрывать.


 
Piter ©   (2004-02-04 01:02) [2]

Юрий, спасибо! Блин, мне в голову стукнуло, что после возврата ShowModal формы уже не будет существовать... вот тормоз я


 
Германн ©   (2004-02-04 03:20) [3]

Больше того. Если эта "форма ввода данных" используется в программе регулярно, то вообще стоит ее поставить в Автосоздание, тогда она будет существовать до завершения программы и ее данные будут доступны в любой момент, а не только сразу после ShowModal.



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

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.014 c
1-38888
Пубертанец
2004-02-04 15:15
2004.02.13
Как удалить строку из TStringGrid


3-38726
mvg_first
2004-01-21 12:18
2004.02.13
Документация по ADO


4-39135
GUNski
2003-12-09 20:51
2004.02.13
Как в MDI-форме получить message при создании MDI-Child-окна?


14-39028
NeyroSpace
2004-01-26 11:14
2004.02.13
Передача


1-38911
Piter
2004-02-04 00:42
2004.02.13
Возврат результата




   Наверх