Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

как обрабатывается событие OnCreate ???????


Страницы:   1 2

-=snoop=- ©   (2005-07-14 15:12:00) 

всем еще раз привет, дело такое,есть Form1, которая видет Form2

...
implementation
uses workWithGrupp;
...

для Form2 описано событие он креате, в которое передается переменная gGruppName, само событие отрабатывается вот каким кодом

gADOq := TADOQuery.Create(form2) ;
 gADOq.Name := 'gADO' ;
 gADOq.CursorLocation := clUseClient ;
 gADOq.CursorType := ctStatic ;
 gADOq.ParamCheck := false ;
 gADOq.ConnectionString :=
      'Provider= VFPOLEDB.1;'+
      'Data Source='+gPthVl+'\pro\;'+
      'Password="";Collating Sequence=MACHINE' ;
 gADOq.SQL.Clear ;
gADOq.SQL.Add('SELECT a.name, a.Arm_00,a.Arm_01,a.Arm_02,a.Arm_03,a.Arm_05,a.Arm_06,a.Arm_09,a.Arm_mg,a.Arm_14,a.Arm_tz,a.Arm_tv,a.Arm_pd,a.Arm_ex,a.A rm_cn,a.Arm_tx,'+
          'b.lbl_name, b.lbl_path, b.lbl_code FROM E:\work\!userbst\grupp a INNER JOIN label.pro b ON a.predpr=b.lbl_code WHERE trim(Name)='+''''+gGruppName+'''') ;
gADOq.Active := true ;

я долго не мог понять, почему запрос не выдает ни каких данных!
для проверки значения gGruppNameзделал вывод на экран этой переменной

form2.Caption := 'Группа для редактирования'+gGruppName ;
showmessage(gGruppName) ;

далее произошло, то чего я ждал((( но это не вызвало у меня особого восторга. при загрузки Form1 отработался showmessage, который естественно вернул пустое значение!!!
вызов процедуры следующий

procedure TForm2.FormCreate(Sender: TObject)
...


какой-то глюк!


ЮЮ   (2005-07-15 09:42:00) [21]

Project > Options > Forms
Там два "контейнера" для форм, левый - для автосоздаваемых.

З.Ы. исключив фориу из автосоздаваеиых, теперь не забуть её создать раньше, чем использовать :)


-=snoop=-   (2005-07-15 09:32:00) [22]

а как можно отключить создание всех дочерних объектов?


gydvin   (2005-07-15 09:26:00) [23]

Потому что событие OnCreate возникает непосредственно после создания формы. А form2 как я понял дочерняя тоже создается вместе с главной но невидимо пока

ТОЛЬКО ПОСЛЕ того как я дважды клину по гриду на первой форме"

потому всю процедуру из form2.oncreate перенеси в form2.onshow


-=snoop=-   (2005-07-15 07:00:00) [24]

как-бы я не тупил с терминами, вопрос остается, и звучит примерно так - "какого чьЁрта отрабатывается OnCreate формы, которая загружается ТОЛЬКО ПОСЛЕ того как я дважды клину по гриду на первой форме"


-=snoop=-   (2005-07-15 06:44:00) [25]

а если в терминах, то возвпащается от процедуры обработки события pgGrupGrdDblClick


-=snoop=-   (2005-07-15 06:03:00) [26]

в Form1 у меня определна переменная gGruppName, которой присваевается возвращенное значение от процедуры

procedure tform1.pgGrupGrdDblClick(Sender: TObject);
begin
 gGruppName := trim(gGrupGRD.DataSource.DataSet.FieldByName('Name').AsString) ;
 workWithGrupp.Form2.ShowModal() ;


ANB   (2005-07-14 15:15:00) [27]


> для Form2 описано событие он креате, в которое передается
> переменная gGruppName,
- а как ты переменную то передешь в событие ????


MetalFan   (2005-07-14 15:14:00) [28]

брр... товарищ! вы в терминах определитесь!
> вызов процедуры следующий
>
> procedure TForm2.FormCreate(Sender: TObject)

какой же это вызов?!


DiamondShark   (2005-07-14 15:14:00) [29]


> для Form2 описано событие он креате, в которое передается
> переменная gGruppName

Это, интересно, как же?


Страницы:   1 2

Наверх

Титульная страница Поиск, карта сайта Написать письмо