Здравствуйте, ShootNik, Вы писали:
SN>MDI приложение. Как осуществить передачу параметров из класса главной формы в класс дочерней формы?
Сам вопрос не понятен, но передать можно параметры так form2.{имя процедуры, функции, компонента, свойства формы ...}
пример
form2.Left := 300;
form2.MyProcedure ('MyFirst parametr', intMySecondParametr);
Здравствуйте, MAcKZloy, Вы писали:
MAK>Здравствуйте, ShootNik, Вы писали:
SN>>MDI приложение. Как осуществить передачу параметров из класса главной формы в класс дочерней формы?
MAK>Сам вопрос не понятен, но передать можно параметры так form2.{имя процедуры, функции, компонента, свойства формы ...} MAK>пример MAK> form2.Left := 300; MAK>form2.MyProcedure ('MyFirst parametr', intMySecondParametr);
Спасибо за ответ. У меня класс реализующий чтение запись настроек программы я его решил разместить в классе главной формы и хотел бы чтоб дочерние формы могли пользоватся данными этого класса, для этого я хочу передать указатель на этот класс в child формы. Дочерние формы появляются после CreateForm
1. Можно через глобальные переменные))) так чето не хочется
2. можно Через PostMessage и GetMessage, на данный момент у меня так, может всеж есть способ получше
3. В WinApi есть CreateWindow с передоваемой структурой, а в Buildere CreateForm?????
Здравствуйте, ShootNik, Вы писали:
SN>1. Можно через глобальные переменные))) так чето не хочется SN>2. можно Через PostMessage и GetMessage, на данный момент у меня так, может всеж есть способ получше SN>3. В WinApi есть CreateWindow с передоваемой структурой, а в Buildere CreateForm?????
SN>1. Можно через глобальные переменные))) так чето не хочется SN>2. можно Через PostMessage и GetMessage, на данный момент у меня так, может всеж есть способ получше SN>3. В WinApi есть CreateWindow с передоваемой структурой, а в Buildere CreateForm?????
По п.3: при создании дочерней формы из основной формы в конструкторе можно передать нужный нам параметр (AOwner: TComponent):
// Код основной формы TMainForm
childForm := TChildForm.Create(self);
В этом случае основная форма будет запомнена как свойство Owner, через которое можено будет получить к ней доступ:
// Код дочерней формы TChildForm
Assert(Owner is TMainForm);
x := (Owner as TMainForm).xxx;
Это для Delphi, в Builder должно быть как-то аналогично.