Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.06.18;
Скачать: CL | DM;

Вниз

вопрос по MDI   Найти похожие ветки 

 
RameS   (2006-06-01 10:35) [0]

процедура создания окна примерно такая:


var Child: TfrChild;
begin
child:=TfrChild.Create(Application);
with child do begin
width:=wdth;
height:=hght;
caption:=childName;
end;
end;


вызываю процедуру, когда необходимо, окно нормально создается.. но здесь возникает следующая проблема
дочернее окно должно заполняться информацией, в зависимости от того, из какой базы данных оно было вызвано.. т.е. после создания окна, необходимо ему передавать некоторые значения
как корректно обратиться к созданному окну, задать параметры компонент и передать значения?


 
ЮЮ ©   (2006-06-01 10:46) [1]

1) создать собственный конструктор:
 child:=TfrChild.Create(Application, <параметр[ы]>);

2) у TfrChild описать public св-ва

 child:=TfrChild.Create(Application);
 child.TableName := "customers.db"


 
RameS   (2006-06-01 13:26) [2]

спасибо Вам, это существенно облегчает задачу

но здесь возникает второй вопрос..
что, если мне необходимо передать лишь id-номер, который будет использован в child-окне после его создания.. т.е. я передаю цифру 0, 1 или 2
на событие OnCreate у child я эти данные обработать не могу, ведь так?
нужно получив цифру, обработать ее в самом дочернем окне, чтоб не передавать всю необходимую информацию при создании окна
как это можно реализовать?


 
Сергей М. ©   (2006-06-01 13:34) [3]


> RameS   (01.06.06 13:26) [2]


> как это можно реализовать?


Тебе ж уже сказано:


> создать собственный конструктор


Эни квэшнз ?


 
RameS   (2006-06-01 13:53) [4]

скажем так... если бы я был профессионалом, не писал бы вопросов в эту ветку
по сему "квэшн" прежний

1) создать собственный конструктор:
child:=TfrChild.Create(Application, <параметр[ы]>);

именно такой собственный конструктор и создан
речь как раз о том, что мне в графе параметры необходимо передавать одну лишь цифру, которая и укажет дочерней форме, какие данные и откуда брать
весь набор данных передавать через параметры этого конструктора довольно громоздко
а проблема в следующем: как реализовать обработку этого параметра после создания дочерней формы?
(на событие OnCreate этой формы, как я понимаю, обработать этот параметр нельзя)


 
Сергей М. ©   (2006-06-01 14:00) [5]


> передавать одну лишь цифру


Ты в состоянии дать собственное определение термину "цифра" ?

Это крайне важно для тебя..


 
RameS   (2006-06-01 14:06) [6]

зачем же давать собственное определение, когда у этого "термина" оно уже есть
если я не профессионально высказал свою мысль, я уже говорил, что не профессионал, но суть вопроса, думаю, вполне понятна


 
MsGuns ©   (2006-06-01 14:10) [7]

Необязательно создавать конструктор. Любые данные можно передать, например, через определенные в главной форме поля, глобальные переменные, датамодуль и т.д.


 
Сергей М. ©   (2006-06-01 14:14) [8]

Есть такое понятие в программировании - "тип данных".

Та самая твоя "цифра" может быть передана параметром как литера, как целочисленное значение, как значение в формате с п/з,  как еще черт те что и с боку бантик ...

Это самое "черт те что" и есть "тип данных".

Вопрос в том и был - какой тип данных изволите предпочесть ?


 
RameS   (2006-06-01 14:16) [9]

большое спасибо!
думаю, глобальные переменные вполне подойдут
буду пробовать


 
RameS   (2006-06-01 14:18) [10]

Сергей М., тип данных, думаю не так важен (в этом случае для меня)
т.е. мне не важно, будет передано int=1 или string="1"
встал вопрос о том, как дочерней форме (при создании) этот параметр обработать
тем не менее, спасибо


 
Сергей М. ©   (2006-06-01 14:27) [11]


> как дочерней форме (при создании) этот параметр обработать


Да как угодно)

TChildForm = class(...)
..
 FParameter: TSomeType;
..
 constructor Create(AOwner: TComponenr; Parameter: TSomeType);
..
end;

constructor TChildForm.Create;
begin
 FParameter := Parameter;
 inherited Create(AOwner);
end;


 
RameS   (2006-06-01 14:45) [12]

Спасибо Вам!



Страницы: 1 вся ветка

Текущий архив: 2006.06.18;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.04 c
15-1148561342
Petr V. Abramov
2006-05-25 16:49
2006.06.18
не запускается BDE-приложение


1-1147240893
kblc
2006-05-10 10:01
2006.06.18
TADOConnection + Thread


2-1148978248
Belorus
2006-05-30 12:37
2006.06.18
TListBox


2-1148964720
kashmar
2006-05-30 08:52
2006.06.18
Помогите разобраться что неправильно


2-1148909221
ksenia
2006-05-29 17:27
2006.06.18
перестановка символов