böyle bir şeydirDelphi XE bir prosedürün bir parametre olarak bir sınıf geçme ı yapmanız gerekenler
form1 := TForm1.Create(application);
form1.showmodal;
freeandnil(form1);
Ne ben A prosedürü daha karmaşıktır, fakat problem formun oluşturulmasını biraz genel hale getirme konusundadır. Belki de @ operatörüyle ilgili bir şey ... gerçekten bilmiyorum.
Herhangi bir öneriniz için teşekkürler!
Application.CreateForm(TForm1, form1);
form1.ShowModal;
FreeAndNil(form1);
Böyle TAppliction.CreateForm()
uğramadan bu taklit edebilir:
'form.Free' orada iyi. Bunun yalnızca formun kurucusunun 'TForm' yapıcısının bir geçersiz kılma olması durumunda işe yaradığını belirtmek gerekir. –
@David, kurucu Oluşturucu, eşleşen parametrelerle, eğer alt yapıcıyı gizlerse, bunun işe yaramayacağını mı söylüyorsunuz? –
@Marcus Bu doğru. Çalışmaya sınıf referansı yoluyla örnek almak için sanal kurucuları kullanmanız gerekir. Aksi takdirde, sınıf referansında ne olduğuna bakılmaksızın, her seferinde bir TMyForm ile sonuçlanırsınız. –