![]() |
![]() |
| Paypal | FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
#6
|
||||
|
||||
|
Ya que lo preguntas, Román, te tocó solucionarme la papeleta:
Que conste que no tengo Updates de Delphi 6 Empresarial instalados. Pones un memo, un boton en Form1: En el boton pones: form2 := Tform2.create(application); Creas un segundo formulario (Form2) y lo quitas de AutocreateForms en Form2, hacemos una traza de los siguientes eventos: - on create pones:form1.Memo1.lines.add('OnCreate '+Booltostr(form2 <> nil)); - on Activate pones:form1.Memo1.lines.add('OnActivate '+Booltostr(form2 <> nil)); - on show pones:form1.Memo1.lines.add('OnShow '+Booltostr(form2 <> nil)); - on paint pones:form1.Memo1.lines.add('Onpaint '+Booltostr(form2 <> nil)); Ejecutas y ves el resultado. A mi me ha dado: Código:
Oncreate false OnActivate true Onshow true OnPaint true Pero probemos en un entorno MDI: Form1 MDIform (el padre) Form2 MDIChild ejecutas el programa y me da esto: Código:
Oncreate false OnActivate false Onshow false OnPaint true ![]() Hasta que no se pinta, no se asigna a la variable Form2 ?? Sin embargo, creando el form2 con CreateForm, me sale todo a true en entorno MDI y en entorno SDI He visto la implementación de CreateForm, y lo hace de una forma distinta a TcustomForm.Create. Ya me contarás que te sale a ti. Saludos |
|
|
|