Форум: "Основная";
Текущий архив: 2008.09.07;
Скачать: [xml.tar.bz2];
ВнизFastScript доступ к объектам дочерних окон. Найти похожие ветки
← →
Afonya (2007-12-21 11:52) [0]Всем добрый день.
У меня в проекте есть главная форма Form1 (unit1).
Существует класс дочерней формы TForm2 (unit2). Она не самосоздаваемая в проекте - создается динамически.
В секторе initialization модуля unit2 делаю следующее:
RegisterClasses([TForm2]);
fsGlobalUnit.AddClass(TForm2,"TForm");
Создание дочерней формы в главной Form1:
procedure TForm1.ActionAddChildFormExecute(Sender: TObject);
var
ChildForm : TCustomForm;
begin
ChildForm := TForm2.Create(Self);
with ChildForm do
begin
Parent := Self;
fsGlobalUnit.AddForm(ChildForm);
end;
end;
Объект fsScript1 класса TfsScript1 принадлежит форме Form1.
При попытке выполнить следующий скрипт выдает ошибку:
begin
ChildForm.ChekBox1.Checked := true;
end.
Вот так вызываю скрипт на выполнение:
procedure TForm1.ActionCompileExecute(Sender: TObject);
begin
fsScript1.Clear;
fsScript1.Lines := fsSyntaxMemo1.Lines; // загрузка вышеописанного скрипта
fsScript1.Parent:= fsGlobalUnit;
if fsScript1.Compile
then begin
ShowMessage("Compiled");
fsScript1.Execute;
end
else begin
ShowMessage(fsScript1.ErrorMsg + " at " + fsScript1.ErrorPos);
fsScript1.Lines.Clear;
fsScript1.Terminate;
ShowMessage("N/OT Compiled");
end;
end;
end;
Пожалуйста, подскажите, как обойти эти "грабли".
← →
Afonya (2007-12-21 12:21) [1]Все!
Разобрался!
Извините за беспокойство... (дело в имени динамически создаваемого компонента класса TForm2)
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2008.09.07;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.007 c