TMyForm : public TForm {
//..................
//..................
public:
struct MyFormParams {
AnsiString str1;
int ival1, ival1max, ival1min;
//..................
};
private:
MyFormParams& Params;
public:
TMyForm(TComponent* Owner,MyFormParams& params);
};
Перенос данных в модальную форму!!!
Каким образом это можно сделать?????
б) Сделав доступной главную форму из модальной,
просто читать public поля главной формы;
в) иным способом...
Цитата:
Originally posted by Berg
а) Через глобальные переменные;
б) Сделав доступной главную форму из модальной,
просто читать public поля главной формы;
в) иным способом...
а) Через глобальные переменные;
б) Сделав доступной главную форму из модальной,
просто читать public поля главной формы;
в) иным способом...
А конструктор модальной формы сделать
__fastcall TfrmModal(TComponent* Owner, AnsiString &S);
Во времена приснопамятной OWL был механизм динамического обмена данными для диалоговых панелей. Ссылка на соответствующий объект передавалась через специальную функцию в модальную панель, в нем содержались все начальные значения для органов управления (едитов, чекбоксов, радиобатонов и т.д.), а также критерии корректности изменения этих параметров. После завершения работы диалога значения автоматически в соответствующем объекте обновлялись. Вот бы кто-нибудь смелый реализовал эту вещь для VCL.
Цитата:
Originally posted by litvit
Есть главная форма и из нее открывается модальная форма. Дак вот я сталкнулся с такой проблеммой, что мне надо из главной формы в модальную передать кое-какие данные (например переменную a="text")!!!
Каким образом это можно сделать?????
Есть главная форма и из нее открывается модальная форма. Дак вот я сталкнулся с такой проблеммой, что мне надо из главной формы в модальную передать кое-какие данные (например переменную a="text")!!!
Каким образом это можно сделать?????
Связать формы "File, Include Unit Hdp..",затем во второй форме например:Label1->Caption=Form1->a;
Кстати переменная а должна быть public.
Цитата:
Originally posted by fellow
Во времена приснопамятной OWL был механизм динамического обмена данными для диалоговых панелей. Ссылка на соответствующий объект передавалась через специальную функцию в модальную панель, в нем содержались все начальные значения для органов управления (едитов, чекбоксов, радиобатонов и т.д.), а также критерии корректности изменения этих параметров. После завершения работы диалога значения автоматически в соответствующем объекте обновлялись. Вот бы кто-нибудь смелый реализовал эту вещь для VCL.
Во времена приснопамятной OWL был механизм динамического обмена данными для диалоговых панелей. Ссылка на соответствующий объект передавалась через специальную функцию в модальную панель, в нем содержались все начальные значения для органов управления (едитов, чекбоксов, радиобатонов и т.д.), а также критерии корректности изменения этих параметров. После завершения работы диалога значения автоматически в соответствующем объекте обновлялись. Вот бы кто-нибудь смелый реализовал эту вещь для VCL.
Да и в MFC такое есть, так что думаю такое есть и в VCL просто как всегда у борланда недокументированно, и всеже самый простой способ именно передача параметров в конструктор формы.
Цитата:
Originally posted by moonmike
Да и в MFC такое есть, так что думаю такое есть и в VCL просто как всегда у борланда недокументированно, и всеже самый простой способ именно передача параметров в конструктор формы.
Да и в MFC такое есть, так что думаю такое есть и в VCL просто как всегда у борланда недокументированно, и всеже самый простой способ именно передача параметров в конструктор формы.
А с другой стороны, никаких особых возможностей или свойств и не надо. Я сделал для себя что-то типа:
Код:
Потом в конструкторе инициализирую Params и все органы управления, на события изменения их состояния вешаю код проверки переданных в аргументе ограничений, по выходу из диалога записываю все назад в Params.