Ю В
Мыслитель
(9453)
12 лет назад
Насколько я поняла, Form2 - это главная форма, а Form3 - это дочерняя, причем их может быть много.
Чтобы сохранить текущую, обращаемся к свойству ActiveMDIChild, а оно имеет тип - дочерняя форма, то есть в твоем случае, TForm3
(ActiveMDIChild as TForm3).Memo1.Lines.SaveToFile(SaveDialog1.FileName);
Чтобы закрыть текущую форму из главной -
(ActiveMDIChild as TForm3).Close;
И цикл там не нужен совсем
Думал-думал, как это сделать, так и не придумал.
Как проверить, какое из дочерних окон сейчас активно?
Пробовал так
procedure TForm2.N5Click(Sender: TObject);
var i:integer;
begin
savedialog1.execute;
if savedialog1.filename<>'' then
for i := 0 to form3.MDIChildCount - 1 do
begin
if Form3.ActiveMDIChild=form3.MDIChildren then
form3.Memo1.Lines.SavetoFile(savedialog1.filename);
end;
ничего не вышло.