Форум: "Основная";
Текущий архив: 2003.06.12;
Скачать: [xml.tar.bz2];
ВнизКак передавать параметры из модальной формы в основную прогу? Найти похожие ветки
← →
MegaVolt (2003-06-02 11:24) [0]В учебниках по дельфи пишут что применение глобальных переменных не жедательно но как тогда передавать и главное сохранять параметры переданные из модальной формы?
← →
Palladin (2003-06-02 11:26) [1]У тебя переменная какая нибудь олицетворяет модальную форму?
Наверняка ведь олицетворяет. Ну и что же тебе мешает обращатся к этим твоим параметрам?
← →
panov (2003-06-02 11:28) [2]Нужно не передавать параметры из модальной формы, а читать их в основной, Т.е. до уничтожения модальной формы читаются переменные или поля VCL модальной формы.
← →
Крот (2003-06-02 11:28) [3]Рекомендую посмотреть устройство функции InputQuery. Это модуль Dialogs.pas
← →
MegaVolt (2003-06-02 11:40) [4]To Palladin:
Ты предлогаешь держать модальную форму созданной всё время? Вроде бы не рационально.:(
To panov:
Это понятно. Я и спрашиваю куда их девать то? Прочитал и положил в глобальную переменную чтобы всем было видно. Но по тому что пишут в учебниках исспользовани глобальных переменных признак дурного тона.
← →
Palladin (2003-06-02 11:43) [5]
> MegaVolt © (02.06.03 11:40)
Что за выводы?
Заведи у себя параметры в главной да и читай из модальной туда.
Ты с OpenDialog работал когданибудь?
← →
Sandman25 (2003-06-02 11:46) [6]with TForm.Create(nil) do
try
ShowModal;
// прием параметров
finally
Free;
end
← →
Reindeer Moss Eater (2003-06-02 11:52) [7]Красивое решение если параметров много:
В модуле модальной формы декларируем тип:
PMyRecord = ^TMyRecord;
TMyRecord = record
IntField : integer;
StrField : string
....
FloatField : Float;
end;
и функцию
function ShowMyModalForm(PRec:PMyRecord):boolean;
begin
with TMyModalForm.Create(Application) do
try
Result:=ShowModal = mrOk;
if Result then
begin
PRec^.IntField := ...
...
PRec^.FloatField := ....;
end;
finally
Free;
end;
end;
← →
MegaVolt (2003-06-02 11:54) [8]To Palladin:
А параметры в гланой глобальные? А это признак плохого тона.
OpenDialog возвращает один параметр и в том месте программы где мне это нужно а с формы возвращается много параметров и некоторые в месте вызова формы не нужны их нужно сохранить до тех пор пока они понадобятся. Сохранить можно только в глобальной переменной а это признак плохого тона :( Так ГДЕ сохранять?
← →
Palladin (2003-06-02 11:58) [9]Я сдаюсь...
← →
Sandman25 (2003-06-02 12:03) [10]>Так ГДЕ сохранять?
В вызывающей форме. Объявите их там в private и не будут они "глобальные".
← →
MegaVolt (2003-06-02 12:18) [11]Понятно :)
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2003.06.12;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.01 c