1. sayfa
Self olarak create ettiğiniz için sorun oluyor sanıyorum . Şu şekilde Create edersen sorun kalmaz galiba Application.Createform (TForm1,ikinciform); ikinciform.Caption:='DENEME'; ikinciform.show; ikinci form 1. formun ikizi olacağı için aynı Create olayı çağrılır yani ikinci kodda işleteceğiniz Create yordamı 1 nci ile aynı olur. Self Create ederek deiştirmek mümkünmü bilemiyorum ama bugüne kadar öğrendiklerimle mümkün olmaz sanıyorum her seferinde ilk create uygulanır ... |
2. Formu görsel oLarak yarat butonLa sadece Cagırırsın bu formu ne fark ederki ? |
ilk form haricinde diğer büyün formları ve formda kullanacağım bütün buttonları,editleri.... yaratıp işim bittiğinde yok ederek programın bellekte kapladığı alanı minimum boyuta indirmek istiyorum. ilk önce senin önerdiğin şekildede denemiştim fakat programın exe si 1.20 ile 1.50 MB arası, programın bellekte kapladığı yerde 5MB gibi bir yer kaplıyor.ben bu problemi bu şekilde aşabileceğimi zannediyorum. daha değişik önerileriniz veya aklınıza gelen değişik bir fikir olduğunda paylaşırsanız çok sevinirim . çok teşekkürler |
Form u sadece tanıt en başta. Daha sonra crate ile oluştur bu şekilde denesene bi. Hani formların nesnelerin tanıtıldıgı kısım var ya oraya tanıt sadece.Ama oluşturma kodda oluşturursun. |
Projenin Project1 Unitinden Ana start ünit application.createform ... ünitID gibi olan formları silerseniz açılışta bütün formlarınız belleğe yüklenmez diyelim 10 tane form kullanıyorsunuz. Application.Createform(TMainform,Mainform); Application.Run; Derseniz sadece Mainform belleğe yüklenir... Diğer formlar yüklenmez gerekli yerde şu şekilde çağırırsınız.. Application.Createform(TForm1,Form1); Bu sayede belleği yönetebilirsin.. Bir diğer yöntem ise formları DLL dosyasına gömmektir Exe boyutunu küçük tutup sadece DLL üzerinden form ve nesneleri yönetirsen salt exe dosyasından çok hızlı çalışabilirsin... ![]() İyi Çalışmalar... |
Amacını baştan söyLeseydin arkadaş daha koLay bi yoL biliyomuş zaten ![]() |
arkadaşım cok saol, bu şekilde kullanabileceğimi bilmiyordum.yeni bişey öğrenmiş oldum... cevap ve fikir veren herkeze çok teşekkürler... |
bir şey deil ...![]() |
1. sayfa
procedure TForm1.Button1Click(Sender: TObject);
var ikinciform:TForm;
begin
ikinciform:=tform.Create(self);
ikinciform.Position:=poMainFormCenter;
ikinciform.Align:=alNone;
ikinciform.FormStyle:=fsNormal;
ikinciform.Show;
ikinciform.Name:='ikiciform';
ikinciform.Caption:='DENEME';
end;
bu kodlarla form1 deki button un içinden yeni bir form yaratıyorum. buraya kadar bir problem yok ama yarattığım ikinci form isimli formun ONCREATE olayını kullanmak istiyorum ne denediysem başarılı olamadım
şimdiden çok teşekkürler.