Вниз
Скачать: 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.021 c
1-38935
olookin
2004-02-04 10:37
2004.02.13
Вставка русскоязычного текста из буфера


1-38770
_BasiL_
2004-02-03 14:24
2004.02.13
Console & ReadKey


1-38951
ARTSOFT
2004-02-03 00:54
2004.02.13
MediaPlayer проигрывает файлы МР3 прерывисто


4-39141
Zyb
2003-12-10 14:48
2004.02.13
Ув. мастера, Как заставить чтобы мое окно появлялось поверх всех


4-39129
Pontic
2003-12-10 12:20
2004.02.13
Имя пользователя Windows




   Наверх