Merhaba arkadaşlar delphide ilk yaptığım projemde içinden çıkamadığım bir durum var :s yaklaşık 10 tane formum ve 1 tanede data modülüm var. bu formalardan sadece bir ekz görüntüleyip daha sonra hiç işime yaramayacak olanlar var bunlar exe üzerinde yer kaplamaması için formları çaüırırken yada kapatırken hangi kodları kullanmam lazım. mesela şifre ekranı lisans ekranı bunları ilk çalışırken görüntülüyorum daha sonra hiç işime yaramıyor exe üerinde yer kaplamasın istiyorum. ben formları açarken ve kapatırken çok acemice olan show ve closeyi kullanıyorum
ikinci bir sorumda programımda ilk önce lisans kontrolü yapan form açılıyor daha sonra kullanıcı şifre eknaı en sonundada anaformum açılıyor. fakat lisans ve şifre formlarını çarpıdan kapattığımda sonraki form açılıyor. formun closesine canone yazıyorum bu sefer hiç kapanmıyor :s bu konuda ne yapmam gerekiyor ?
Öncelikle bir forum konusu içerisinde birden fazla soru sormayın. Her soru kendine özeldir. Birincisi bir formu EXE den atamazsınız. Sizin anlatımınıza göre program çalışırken EXE nin boyutu sürekli azalsın ve çoğalsın diyorsunuz. Öyle bir şey olmaz. Sanırım siz formlar memory de yer kaplamasın demek istiyorsunuz? Bu durumda formları projenizin Auto-create listesinden çıkarmanız lazım. Bunu Project > Options > Forms bölümünden yapabilirsiniz. Böylece programın başlarken programdaki tüm formları memory de otomatik olarak oluşturmasını engelledik. Formları görüntülerken de aşağıdaki gibi bir kalıbı kullanmanız gerekir.
Formu hafızada oluşturuyorsunuz, modal olarak görüntülüyorsunuz ve son olarak hafızadan atıyorsunuz. Ayrıca form kapanırken nasıl bir sonuçla kapandığını da (Tamam veya Vazgeç) şu şekilde kontrol edebilirsiniz.
Görüntülediğiniz formdaki Tamam düğmesinin OnClick olayına aşağıdaki kodu yazın.
Form1 := TForm1.Create(Self);
try
if Form1.ShowModal = mrOK then
begin
ShowMessage('Tamam tuşuna basılarak çıkıldı.');
end else
begin
ShowMessage('Tamam tuşuna basma haricindeki bir yöntemle çıkıldı.');
end;
finally
Form1.Free;
end;
Sıradan her programcı bilgisayarın anlayabileceği kodlar yazabilir.
Sadece iyi programcılar insanların da anlayabileceği kodlar yazarlar.
Martin Fowler (http://martinfowler.com/)